Maison > Article > développement back-end > Comment utiliser le test du chi carré pour l'analyse statistique en Python ?
En tant que méthode statistique importante, le test du chi carré est l'une des méthodes de test couramment utilisées pour la relation entre les variables catégorielles. En Python, la bibliothèque SciPy fournit la fonction chi carré pour effectuer des tests du chi carré. Cet article présentera le principe, les exemples d'utilisation et de mise en œuvre du test du chi carré pour aider les lecteurs à mieux comprendre et appliquer le test du chi carré.
1. Principe du test du chi carré
L'idée principale du test du chi carré est de comparer la différence entre la valeur réelle observée et la valeur théorique. Si la différence entre les deux est significative, cela signifie que. il existe une relation entre les deux variables. Le test du chi carré analyse différemment les données dans différentes dimensions. Cet article présente principalement le principe du test du chi carré bidimensionnel.
Dans le cas d'un tableau bidimensionnel, le test du chi carré suppose d'abord qu'il n'y a pas de relation entre les deux variables, calcule la valeur attendue E sur la base de l'hypothèse, puis calcule la valeur du chi carré sur la base de la valeur réelle. la valeur observée O et la valeur attendue E, et calcule enfin la valeur du chi carré en consultant le tableau ou en calculant. Effectuez un test de signification pour déterminer si l'hypothèse est vraie.
La formule de calcul spécifique est la suivante :
Valeur du chi carré χ²=(O-E)²/E
Parmi eux, O est la valeur réelle observée et E est la valeur attendue.
Si la valeur du chi carré est plus grande, la relation entre les deux variables est plus significative et l'hypothèse est rejetée ; à l'inverse, si la valeur du chi carré est plus petite, la relation est moins significative et l'hypothèse est acceptée ;
2. Utilisation du test du chi carré
Avant d'effectuer le test du chi carré, vous devez préparer les données. De manière générale, les données existent sous la forme d'un tableau bidimensionnel, comprenant à la fois la valeur réelle observée O et la valeur attendue E, comme suit :
类别A 类别B
Variable 1 70 30
Variable 2 40 60
Parmi elles, 70 représente variable 1 et Nombre d'intersections pour la catégorie A.
Utilisez la bibliothèque SciPy en Python pour calculer facilement la valeur du chi carré et la valeur p correspondante. Le code est le suivant :
from scipy.stats import chisquare import numpy as np obs = np.array([[70, 30], [40, 60]]) #实际观测值 exp = np.array([[50, 50], [50, 50]]) #期望值 stat, pval = chisquare(obs.ravel(), f_exp=exp.ravel()) print(stat, pval)
Parmi eux, la fonction chi carré est utilisée pour calculer la valeur du chi carré et la valeur p correspondante, obs et exp représentent respectivement la valeur réelle observée et la valeur attendue, la fonction ravel() convertit le tableau bidimensionnel en un tableau unidimensionnel et le paramètre f_exp spécifie la valeur attendue. Lorsqu'il est défini sur Aucun, utilisez obs.sum()/4 comme valeur attendue.
Après avoir obtenu la valeur du chi carré et la valeur p, vous devez déterminer si l'hypothèse est vraie. Généralement, le niveau de signification α est fixé à 0,05. Si la valeur p est inférieure ou égale à α, l'hypothèse nulle est rejetée, indiquant qu'il existe une relation entre les deux variables. Dans le cas contraire, l'hypothèse nulle est acceptée, indiquant qu'il existe une relation entre les deux variables. il n'y a pas de relation.
Le code est le suivant :
alpha = 0.05 if pval <= alpha: print("Reject null hypothesis, variables are related.") else: print("Accept null hypothesis, variables are independent.")
3. Exemple d'implémentation
Ce qui suit est un exemple simple pour démontrer l'utilisation du test du chi carré. Supposons qu'un test A/B soit effectué sur un site e-commerce pour tester si le temps de connexion de l'utilisateur a un impact sur le temps de navigation du site. Les données sont les suivantes :
浏览时长<10s 浏览时长>=10s
Connexion A 1000 2000
Connexion B 1500. 2500
Tout d'abord, vous devez calculer la valeur attendue E. Selon La valeur attendue obtenue par le calcul des données est la suivante :
浏览时长<10s 浏览时长>=10s
Connexion A 1200 1800
Connexion B 1300 1900
Utilisez le code Python pour le calcul et les tests d'hypothèse comme suit :
obs = np.array([[1000, 2000], [1500, 2500]]) #实际观测值 exp = np.array([[1200, 1800], [1300, 1900]]) #期望值 stat, pval = chisquare(obs.ravel(), f_exp=exp.ravel()) print(stat, pval) alpha = 0.05 if pval <= alpha: print("Reject null hypothesis, variables are related.") else: print("Accept null hypothesis, variables are independent.")
Le résultat final est : rejeter l'hypothèse nulle, indiquant que la méthode de connexion de l'utilisateur a un impact sur le temps de navigation .
4. Résumé
Le test du chi carré est une méthode de test couramment utilisée pour la relation entre des variables catégorielles, qui peut déterminer s'il existe une relation entre deux variables. En Python, le test du chi carré peut être facilement effectué à l'aide de la fonction chi carré fournie par la bibliothèque SciPy. Grâce à l'introduction de cet article, les lecteurs peuvent mieux comprendre et utiliser le test du chi carré, et l'analyse statistique des données peut être plus standardisée et scientifique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!