Calculateur de déciles
Neuf points de coupure partagent vos données en dix parts égales : D1 marque les 10 % les plus bas, D5 correspond à la médiane et D9 aux 90 %. Voyez où se place un salaire ou une note sans calculer neuf percentiles séparés. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Ce calculateur de déciles transforme un tableau de nombres en neuf seuils qui divisent sa distribution ordonnée en dix parts égales. Il valide chaque valeur, trie une copie des données et calcule D1 à D9 par interpolation linéaire inclusive. Vous pouvez ainsi situer les observations dans les dixièmes inférieurs, centraux et supérieurs d’un échantillon sans demander neuf percentiles séparés. L’ordre initial reste intact et tout tableau vide est explicitement refusé.
Ce que décrivent les neuf déciles
Les déciles sont des repères de position dans un jeu de données ordonné. D1 correspond au point associé aux dix premiers pour cent de la distribution, D2 à vingt pour cent, et la série se poursuit jusqu’à D9, à quatre-vingt-dix pour cent. Ensemble, ces neuf valeurs forment dix bandes contenant des proportions approximativement égales des observations.
Elles sont utiles lorsqu’une moyenne unique masque la forme des données, notamment en présence d’une distribution asymétrique ou d’une longue traîne. Un analyste des rémunérations peut, par exemple, observer leur évolution dans tout l’effectif au lieu de réduire celui-ci à une seule moyenne. Le calculateur renvoie chaque seuil par ordre croissant : le premier élément est D1 et le neuvième D9.
Il fournit aussi les valeurs triées et leur nombre afin de rendre le calcul vérifiable. Les déciles expriment une position relative dans l’échantillon transmis ; ils n’impliquent pas des écarts identiques entre seuils voisins. Des intervalles larges ou étroits caractérisent réellement la distribution observée.
Application de l’interpolation linéaire
Le calcul vérifie d’abord que l’entrée est un tableau non vide composé uniquement de nombres JavaScript finis. Il trie ensuite une copie des valeurs de la plus petite à la plus grande. Pour chaque décile k compris entre un et neuf, il détermine l’indice fractionnaire de base zéro : (k divisé par dix) multiplié par (n moins un), n étant le nombre d’observations.
Si cet indice est entier, la valeur correspondante est renvoyée directement. S’il se situe entre deux positions, le résultat est interpolé proportionnellement entre les valeurs inférieure et supérieure. Avec cette convention linéaire inclusive, D1 équivaut au dixième percentile, D5 à la médiane et D9 au quatre-vingt-dixième percentile.
Les doublons restent présents, car chaque observation compte dans le positionnement. Les valeurs négatives et décimales sont admises. NaN, Infinity, les chaînes, les valeurs nulles et les autres entrées non numériques sont refusés au lieu d’être convertis silencieusement, afin qu’un résultat apparemment valable ne masque jamais des données sources incorrectes.
Interprétation et utilisation du résultat
Interprétez les déciles renvoyés comme des seuils, et non comme dix moyennes distinctes. Une valeur inférieure à D1 se situe dans la partie basse de la distribution transmise, tandis qu’une valeur supérieure à D9 appartient à sa partie haute. Les valeurs comprises entre D4 et D5 occupent la bande délimitée par ces deux repères.
Sur un petit échantillon, l’interpolation peut placer un seuil entre deux valeurs observées ; ce résultat est normal et ne signifie pas que le nombre calculé figurait dans le tableau initial. Les logiciels statistiques proposant plusieurs conventions de quantiles, consignez la méthode lorsque vous comparez différents systèmes. Cette capacité annonce la méthode linéaire et joint l’échantillon trié pour permettre un audit.
Utilisez un échantillon représentatif avant de tirer des conclusions : les déciles résument fidèlement les nombres reçus, mais ne corrigent ni biais de sélection, ni données manquantes, ni unités incompatibles. Harmonisez les unités et vérifiez la légitimité des répétitions.
Cas d’usage
Segmenter des résultats de performance
Créez dix bandes pour des notes, campagnes ou indicateurs opérationnels sans calculer séparément chaque percentile.
Étudier la distribution des revenus
Comparez les dixièmes inférieurs, centraux et supérieurs d’un échantillon de salaires ou de revenus sans perdre sa forme.
Définir des seuils de surveillance
Employez les limites historiques des déciles comme références transparentes pour les observations exceptionnellement faibles ou élevées.
Questions fréquentes
Que renvoie le calculateur ?
Il renvoie un tableau ordonné de D1 à D9, ainsi que la méthode, le nombre d’observations et les données triées utilisées.
Quelle méthode de calcul est appliquée ?
Il applique une interpolation linéaire inclusive aux positions (k/10) × (n−1), pour k allant de 1 à 9.
D5 est-il la médiane ?
Oui. Selon cette convention d’interpolation linéaire, D5 est le cinquantième percentile, donc la médiane.
Les doublons et nombres négatifs sont-ils admis ?
Oui. Les doublons, nombres négatifs, zéros et décimales sont acceptés si chaque entrée est un nombre fini.
Comment savoir dans quel dixième se situe une valeur ?
Lisez les déciles comme des frontières, pas comme des moyennes. Une valeur sous D1 se trouve dans le dixième le plus bas de votre échantillon, une valeur entre D4 et D5 dans le cinquième, et une valeur au-dessus de D9 dans le plus haut.
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/stat/deciles \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"values":[12,7,3,18,10,5,14,1,16,9]}'const res = await fetch("https://api.kit.forhosting.com/stat/deciles", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"values": [
12,
7,
3,
18,
10,
5,
14,
1,
16,
9
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/deciles",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"values": [
12,
7,
3,
18,
10,
5,
14,
1,
16,
9
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/deciles", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"values":[12,7,3,18,10,5,14,1,16,9]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"values":[12,7,3,18,10,5,14,1,16,9]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/deciles", 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
{
"values": [
12,
7,
3,
18,
10,
5,
14,
1,
16,
9
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.deciles",
"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
Interprétation et utilisation du résultat
Chaque requête automatisée coûte $0.002 et produit toujours le même résultat, quel que soit l’ordre initial.
Questions techniques
Que se passe-t-il avec un tableau vide ?
La requête échoue avec une erreur invalid_input, car aucun seuil de décile ne peut être calculé sans observation.
Quel est le prix d’un calcul par API ?
Chaque requête automatisée coûte $0.002.