Taille de l'échantillon pour le test d'indépendance du chi carré de Pearson
J'essaye de faire un $\chi^2$test d'indépendance entre deux variables. Le problème que j'ai est que j'ai du mal avec la taille de l'échantillon pour le test. Je me retrouve toujours avec des cellules contenant 0 échantillon.
J'ai les données disponibles sur l'ensemble de la population, mais je ne peux pas les utiliser pour tester des hypothèses, j'ai donc essayé différentes tailles avec et sans remplacement. En outre, la population est assez petite - seulement 162.
Avec des échantillons de plus petite taille, la chisq()
fonction dans R continuait à générer des messages d'erreur indiquant que l'estimation pouvait être incorrecte.
> chisq = chisq.test(tbl)
Warning message:
In chisq.test(tbl) : Chi-squared approximation may be incorrect
Maintenant, je suis passé à un échantillon de 100% de la population avec remplacement. L'erreur a disparu, mais je m'inquiète depuis:
a) J'ai encore 0 échantillons dans certaines cellules :
var2_high var2_low var2_medium var2_very_high
var1_high 12 0 10 3
var1_low 10 20 9 1
var1_medium 5 23 19 0
var1_very_high 9 0 0 41
Et b) Je ne sais pas si une telle taille d'échantillon est acceptable .
Quelqu'un peut-il m'aider avec ces questions?
Réponses
Vous voyez le message ci-dessus car l'approximation du chi carré n'est pas fiable lorsque la taille de l'échantillon est petite. Je vous recommande d'utiliser les données originales et d'effectuer un test exact de Fisher. Un exemple est donné ci-dessous pour savoir quand ce problème pourrait survenir et comment nous pouvons le résoudre en utilisant le test susmentionné.
Supposons que nous ayons les exemples de données suivants ci-dessous. En passant, le test exact de Fisher a été créé à partir de l'expérience de dégustation de thé par dame .
Truth
Guess Milk Tea
Milk 3 1
Tea 1 3
Nous voulons tester l'hypothèse que les deux variables sont indépendantes. En utilisant un test du chi carré, nous obtenons l'avertissement ci-dessous:
Code:
TeaTasting <- matrix(c(3, 1, 1, 3),
nrow = 2,
dimnames = list(Guess = c("Milk", "Tea"), Truth = c("Milk", "Tea")))
chiSqTest= chisq.test(TeaTasting)
Warning message:
In chisq.test(TeaTasting) : Chi-squared approximation may be incorrect
Cela n'est pas surprenant puisque la taille de l'échantillon est relativement petite. De plus, nous voyons que les décomptes attendus sont tous inférieurs à 5.
chiSqTest$expected
Truth
Guess Milk Tea
Milk 2 2
Tea 2 2
Dans ce cas, nous pouvons utiliser un test exact de Fisher pour tester notre hypothèse.
fisher.test(TeaTasting)
Étant donné que notre valeur p est beaucoup plus grande que 0,05, nous pouvons conclure qu'il n'y a aucune preuve statistique suggérant que les deux variables sont indépendantes
Fisher's Exact Test for Count Data
data: TeaTasting
p-value = 0.4857
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
0.2117329 621.9337505
sample estimates:
odds ratio
6.408309