Variation absolue
La variation absolue entre 128,5 et 95,25 est de 33,25, quel que soit l'ordre de saisie. Saisissez deux nombres pour voir l'écart qui les sépare, sans signe, qu'il s'agisse d'une dérive, d'un ajustement de prix ou d'une erreur de prévision. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- A
- 128,5
- B
- 95,25
- Variation absolue
- 33,25
La calculatrice de variation absolue prend deux valeurs numériques et renvoie la distance qui les sépare, quelle que soit la direction : |a − b|, toujours zéro ou plus. Elle répond à la question la plus simple et la plus fréquente de toute comparaison — de combien cela a-t-il bougé ? — sans que vous ayez à savoir quelle valeur est arrivée en premier ni si la variation est une hausse ou une baisse. Les entrées non numériques, vides ou infinies sont rejetées avec une erreur claire au lieu d'un NaN silencieux.
Ce que signifie la variation absolue
La variation entre deux valeurs peut s'exprimer de deux façons. La variation signée, b moins a, indique la direction : positive quand la valeur a augmenté, négative quand elle a diminué. La variation absolue écarte le signe et ne garde que la magnitude.
C'est ce qu'il vous faut chaque fois que la direction est sans importance ou déjà connue : la dérive d'un capteur par rapport à sa lecture de référence, l'ampleur d'un ajustement de prix, l'erreur entre une prévision et la valeur observée, ou la distance entre deux mesures d'une même grandeur. La variation absolue est symétrique — |a − b| est égal à |b − a| —, donc l'ordre des entrées n'a jamais d'importance, et le résultat est toujours zéro ou plus. Zéro signifie que les deux valeurs sont identiques.
Comme le résultat est un nombre dans les mêmes unités que les entrées, il s'enchaîne proprement avec toute vérification en aval, par exemple déclencher une alerte quand la variation absolue dépasse un seuil.
Où elle s'intègre dans un pipeline
La variation absolue est rarement la réponse finale ; c'est la brique dont sont faites les autres vérifications. Les tâches de supervision l'utilisent pour comparer une métrique actuelle à une ligne de base et ne se déclencher que lorsque la magnitude du mouvement franchit une limite, sans se soucier du signe. Les tâches de rapprochement l'utilisent pour confirmer que deux systèmes concordent dans une tolérance, en additionnant les variations absolues de chaque ligne pour obtenir un écart total.
Les étapes de nettoyage de données l'utilisent pour repérer les valeurs aberrantes par leur distance à une médiane ou à une valeur précédente. Parce que cette capacité est déterministe, sans état et sans effets de bord, vous pouvez l'appeler à n'importe quel volume et mémoïser ses résultats en toute sécurité.
Cas d’usage
Alertes sur la dérive des métriques
Comparez une lecture actuelle à sa ligne de base et alertez quelqu'un lorsque la variation absolue franchit un seuil, quelle que soit la direction.
Rapprochement entre deux systèmes
Vérifiez qu'un montant enregistré dans deux bases de données concorde dans une tolérance en contrôlant que la variation absolue est proche de zéro.
Mesure de l'erreur de prévision
Calculez à quelle distance une prévision s'est retrouvée de la valeur observée ; la variation absolue est l'erreur absolue utilisée dans les scores de type MAE.
Questions fréquentes
Combien cela coûte-t-il ?
C'est aussi gratuit à exécuter dans votre navigateur sur cette page.
L'ordre des deux valeurs a-t-il une importance ?
Non. |a − b| est égal à |b − a|, donc le résultat est identique dans les deux sens.
Que se passe-t-il avec une entrée non numérique ?
Les requêtes en erreur ne sont pas facturées.
Puis-je passer des nombres sous forme de chaînes ?
Oui. Une chaîne non vide qui s'interprète comme un nombre fini, comme "128.5", est acceptée et convertie avant la soustraction.
Et Infinity ou NaN ?
Ils sont rejetés. Les deux entrées doivent être des nombres finis, donc le résultat est toujours un nombre réel non négatif.
Quelque chose est-il stocké ?
Non. Le calcul est sans état : les deux valeurs sont lues, la différence est renvoyée et rien n'est conservé.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/math/absolute-change \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":128.5,"b":95.25}'const res = await fetch("https://api.kit.forhosting.com/math/absolute-change", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 128.5,
"b": 95.25
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/absolute-change",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 128.5,
"b": 95.25
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/absolute-change", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":128.5,"b":95.25}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":128.5,"b":95.25}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/absolute-change", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"a": 128.5,
"b": 95.25
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.absolute_change",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Comment le calcul fonctionne
Le même module pur s'exécute aux deux endroits, donc un résultat que vous vérifiez interactivement est le résultat que votre pipeline recevra. Il n'y a pas de limite de magnitude cachée au-delà de ce que les doubles finis peuvent représenter. Le endpoint accepte deux champs, a et b, chacun devant être un nombre fini. Les chaînes numériques comme "42.5" sont acceptées et converties, mais tout ce qui ne représente pas un nombre fini — null, booléens, NaN, Infinity, chaînes vides, objets — est rejeté avec une erreur invalid_input et n'est jamais facturé. Le résultat est calculé comme la valeur absolue de la différence, Math.abs(a − b), en double précision, exactement la même arithmétique que celle de votre navigateur ou de tout environnement IEEE-754. Aucune politique d'arrondi n'est appliquée par-dessus : ce que la soustraction produit est ce que vous recevez, ce qui rend l'API reproductible octet par octet entre la version gratuite du navigateur et le endpoint payant.
Où elle s'intègre dans un pipeline
Elle s'exécute sur notre edge mondial sans rien conserver après la réponse, et son usage interactif sur cette page est gratuit — vous ne payez que $0.002 par requête lorsque vous l'automatisez via l'API.