Calculateur de test z pour deux proportions
Ce calculateur de test z pour deux proportions compare les taux de réussite de deux échantillons indépendants.
Lancer gratuitement
Indiquez le nombre de réussites et l'effectif total de chaque groupe : vous obtiendrez les proportions observées, la proportion groupée sous l'hypothèse nulle, l'erreur-type groupée, la statistique z signée et la valeur p bilatérale. Ce calcul déterministe et transparent convient aux analyses rapides, aux rapports reproductibles et aux contrôles automatisés lorsque l'approximation normale est appropriée.
Saisissez les effectifs de deux groupes indépendants
Pour chaque groupe, indiquez le nombre de réussites et le nombre total d'observations. Une réussite correspond à l'événement que vous souhaitez comparer : achat, contrôle réussi, réponse à une enquête ou atteinte d'un critère clinique prédéfini. Le nombre de réussites doit être un entier compris entre zéro et l'effectif correspondant, et chaque effectif doit être un entier au moins égal à un. Appliquez la même définition de réussite et la même période d'observation aux deux groupes, sans quoi la comparaison répondrait à une question incohérente. Les groupes doivent également être indépendants : une observation ne doit pas figurer dans les deux échantillons ni être volontairement appariée. Des groupes affectés séparément dans une expérience sont généralement indépendants, tandis que des mesures réalisées sur les mêmes personnes avant et après exigent une autre méthode. Saisissez les effectifs bruts plutôt que des pourcentages arrondis afin de conserver les véritables dénominateurs. La différence est toujours calculée comme groupe un moins groupe deux ; choisissez donc l'ordre adapté à votre interprétation.
Comprenez le calcul du test z groupé
L'hypothèse nulle suppose l'égalité des deux proportions dans les populations. Selon cette hypothèse, les réussites des deux échantillons sont réunies pour estimer une proportion commune : le total des réussites divisé par le total des observations. L'erreur-type groupée est la racine carrée de cette proportion multipliée par un moins cette proportion et par la somme des inverses des effectifs. La statistique z divise ensuite la différence observée, proportion un moins proportion deux, par cette erreur. Une valeur positive indique un taux supérieur dans le premier groupe, et une valeur négative un taux inférieur. La valeur p est bilatérale : elle mesure les éléments contraires à l'égalité dans les deux directions et vaut deux fois la probabilité de queue normale au-delà de la valeur absolue de z. Aucune correction de continuité n'est appliquée. Si les deux groupes ne comportent que des échecs ou que des réussites, leurs taux sont identiques et la variance est nulle ; le résultat indique z égal à zéro et une valeur p égale à un.
Interprétez la valeur p et vérifiez l'approximation
Une petite valeur p signifie qu'une différence au moins aussi extrême serait inhabituelle si les proportions des populations étaient réellement égales et si les hypothèses d'échantillonnage étaient respectées. Elle ne représente pas la probabilité que l'hypothèse nulle soit vraie, ne mesure pas l'importance pratique de l'écart et n'établit pas de causalité. Examinez aussi les deux proportions et envisagez de communiquer un intervalle de confiance ou une taille d'effet. Avant de retenir l'approximation normale, vérifiez que les nombres attendus de réussites et d'échecs sous l'hypothèse groupée sont suffisamment élevés dans chaque groupe. Une règle courante fixe un minimum de cinq pour chaque effectif attendu, mais un seuil plus strict peut convenir. Des données rares, de petits échantillons ou des taux proches de zéro ou un peuvent justifier une méthode exacte telle que le test de Fisher. L'indépendance et le plan d'étude restent essentiels : biais de sélection, observations répétées, définitions incohérentes ou comparaisons multiples non planifiées peuvent invalider une valeur p séduisante. L'API déterministe coûte $0.002 par requête et reproduit la même formule.
Cas d’usage
Comparer les conversions d'une expérience
Testez si des variantes attribuées indépendamment présentent des proportions d'achat ou d'inscription différentes.
Comparer des taux de défauts
Comparez la proportion d'articles qui échouent à un critère de qualité uniforme dans deux groupes de production.
Évaluer des écarts dans une enquête
Analysez une réponse binaire formulée de la même manière dans deux populations échantillonnées indépendamment.
Questions fréquentes
La valeur p est-elle unilatérale ou bilatérale ?
Elle est bilatérale et teste une différence dans l'une ou l'autre direction.
Pourquoi le test regroupe-t-il les proportions ?
L'hypothèse nulle suppose une proportion commune ; l'erreur sous cette hypothèse combine donc les réussites et observations des deux groupes.
Dans quel sens la statistique z est-elle calculée ?
Elle utilise la proportion un moins la proportion deux. Une valeur positive indique que la première proportion observée est supérieure.
Puis-je saisir des pourcentages plutôt que des effectifs ?
Non. Saisissez des nombres entiers de réussites et d'observations afin de conserver les véritables dénominateurs.
Que se passe-t-il si un effectif est inférieur à un ?
La requête renvoie une erreur d'entrée non valide, car chaque groupe doit comprendre au moins une observation.
Quel est le coût d'utilisation de l'API ?
Chaque requête API coûte $0.002 ; le calculateur du navigateur peut aussi effectuer le calcul localement.
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/z-test-two-proportions \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"successes_1":56,"size_1":100,"successes_2":42,"size_2":100}'const res = await fetch("https://api.kit.forhosting.com/stat/z-test-two-proportions", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"successes_1": 56,
"size_1": 100,
"successes_2": 42,
"size_2": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/z-test-two-proportions",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"successes_1": 56,
"size_1": 100,
"successes_2": 42,
"size_2": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/z-test-two-proportions", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"successes_1":56,"size_1":100,"successes_2":42,"size_2":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"successes_1":56,"size_1":100,"successes_2":42,"size_2":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/z-test-two-proportions", 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
{
"successes_1": 56,
"size_1": 100,
"successes_2": 42,
"size_2": 100
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.z_test_two_proportions",
"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. |