R 中卡方检验的困难

问题描述 投票:0回答:1

我正在尝试执行 3 个单独的卡方检验,以确定 BMI 和 2 型糖尿病之间是否存在显着性。一种适用于男性和女性,一种适用于男性,另一种适用于女性。然而,当我尝试运行我的代码时,我得到了非常大的 X 平方值和 n/a 的 df 值。

EMLab数据表

代码:

combined <- table(EMLabData$BMI, EMLabData$T2D)
men <- table(EMLabData$BMI[EMLabData$Sex=="Male"], EMLabData$T2D[EMLabData$Sex=="Male"])
women <- table(EMLabData$BMI[EMLabData$Sex=="Female"], EMLabData$T2D[EMLabData$Sex=="Female"])

chisq.test(combined, simulate.p.value = TRUE)
chisq.test(men, simulate.p.value = TRUE)
chisq.test(women, simulate.p.value = TRUE)

输出:

data:  combined
X-squared = 1423.4, df = NA, p-value = 0.0004998

data:  men
X-squared = 727.94, df = NA, p-value = 0.04798

data:  women
X-squared = 1.2297, df = NA, p-value = 1

我不确定出了什么问题以及如何解决。任何帮助将不胜感激。

r statistics
1个回答
0
投票

自由度用于选择用于计算 p 值的卡方分布。 但是您告诉函数使用模拟而不是特定分布来查找 p 值,因此在这种情况下自由度并不重要。 帮助文件 (

?chisq.test
) 特别指出,当使用蒙特卡洛模拟时,
parameter
(即自由度)将为
NA
(请参阅
Value
部分和
parameter
小节)。

大的卡方值是反对零假设的证据,并且当零假设为假时,随着较大的表格和表格中的计数的增加,卡方值往往会变得更大。

所以 R 正在为您提供您想要的东西。 没有任何问题。

© www.soinside.com 2019 - 2024. All rights reserved.