Comment calculer le V de Cramer en Python



Le V de Cramer est une mesure de la force de l’association entre deux variables nominales .

Il va de 0 à 1 où :

  • 0 indique aucune association entre les deux variables.
  • 1 indique une forte association entre les deux variables.

Il est calculé comme suit :

V de Cramer = √ (X 2 /n) / min(c-1, r-1)

où:

  • X 2 : La statistique du Chi carré
  • n : taille totale de l’échantillon
  • r : Nombre de lignes
  • c : Nombre de colonnes

Ce didacticiel fournit quelques exemples de calcul du V de Cramer pour un tableau de contingence en Python.

Exemple 1 : V de Cramer pour une table 2×2

Le code suivant montre comment calculer le V de Cramer pour une table 2×2 :

#load necessary packages and functions
import scipy.stats as stats
import numpy as np

#create 2x2 table
data = np.array([[7,12], [9,8]])

#Chi-squared test statistic, sample size, and minimum of rows and columns
X2 = stats.chi2_contingency(data, correction=False)[0]
n = np.sum(data)
minDim = min(data.shape)-1

#calculate Cramer's V 
V = np.sqrt((X2/n) / minDim)

#display Cramer's V
print(V)

0.1617

Le V de Cramer s’avère être de 0,1617 , ce qui indique une association assez faible entre les deux variables du tableau.

Exemple 2 : V de Cramer pour les tables plus grandes

Notez que nous pouvons utiliser la fonction CramerV pour calculer le V de Cramer pour un tableau de n’importe quelle taille.

Le code suivant montre comment calculer le V de Cramer pour un tableau comportant 2 lignes et 3 colonnes :

#load necessary packages and functions
import scipy.stats as stats
import numpy as np

#create 2x2 table
data = np.array([[6,9], [8, 5], [12, 9]])

#Chi-squared test statistic, sample size, and minimum of rows and columns
X2 = stats.chi2_contingency(data, correction=False)[0]
n = np.sum(data)
minDim = min(data.shape)-1

#calculate Cramer's V 
V = np.sqrt((X2/n) / minDim)

#display Cramer's V
print(V)

0.1775

Le V de Cramer s’avère être 0,1775 .

Notez que cet exemple utilisait un tableau avec 2 lignes et 3 colonnes, mais exactement le même code fonctionne pour un tableau de toutes dimensions.

Ressources additionnelles

Test d’indépendance du chi carré en Python
Test d’ajustement du chi carré en Python
Test exact de Fisher en Python

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *