【问题标题】:performing a chi square test across multiple variables and extracting the relevant p value in R跨多个变量执行卡方检验并提取 R 中的相关 p 值
【发布时间】:2019-04-06 05:08:21
【问题描述】:

好的,直奔问题。我有一个包含大量分类变量的数据库。

具有如下几个变量的示例数据库

gender <- as.factor(sample( letters[6:7], 100, replace=TRUE, prob=c(0.2, 0.8) ))    
smoking <- as.factor(sample(c(0,1),size=100,replace=T,prob=c(0.6,0.4)))    
alcohol <- as.factor(sample(c(0,1),size=100,replace=T,prob=c(0.3,0.7)))    
htn <- as.factor(sample(c(0,1),size=100,replace=T,prob=c(0.2,0.8)))    
tertile <- as.factor(sample(c(1,2,3),size=100,replace=T,prob=c(0.3,0.3,0.4)))    
df <- as.data.frame(cbind(gender,smoking,alcohol,htn,tertile))

我想使用卡方检验来检验这个假设,即吸烟者的比例、酒精使用、高血压 (htn) 等按三分位数(3 个因素)存在差异。然后我想提取每个变量的 p 值。

现在我知道我可以使用 2 x 3 交叉表测试每个单独的变量,但是是否有更有效的代码可以一次性导出所有变量的测试统计量和 p 值,并提取每个变量的 p 值

提前致谢

阿努普

【问题讨论】:

  • 您想在这里执行哪种类型的统计测试?知道这应该有助于我们告诉您如何实施它。根据您要使用的测试,有很多很多方法可以完成 p 值(有些方法在统计上比其他方法更合适)。如果您不确定应该执行哪种测试,您不妨先在Cross Validated 寻求统计建议。
  • 您好,很抱歉没有说明清楚。它是一个卡方检验。已更新问题。
  • 那么在这个例子中你想要 4 个不同的 2 路卡方检验 p 值吗?
  • 是的,但不是运行四次测试,有没有办法循环代码,以便 R 自动跨所有分类变量?

标签: r


【解决方案1】:

如果你想在一个语句中做所有的比较,你可以这样做

mapply(function(x, y) chisq.test(x, y)$p.value, df[, -5], MoreArgs=list(df[,5]))
#    gender   smoking   alcohol       htn 
# 0.4967724 0.8251178 0.5008898 0.3775083 

当然,以这种方式进行测试在统计上有些低效,因为您在这里进行多项测试,因此需要进行一些修正以保持适当的 1 类错误率。

【讨论】:

  • “需要进行一些更正以保持适当的类型 1 错误率。” - 是否可以将 alpha 级别除以执行的测试数量以缓解此问题?
  • @orrymr 这就是所谓的 Bonferroni 校正。这很常见,但也非常保守。您可以谷歌它以了解更多信息。
【解决方案2】:

如果您想详细了解测试结果,可以运行以下代码块:

lapply(df[,-5], function(x) chisq.test(table(x,df$tertile), simulate.p.value = TRUE))

你可以只得到 p 值:

lapply(df[,-5], function(x) chisq.test(table(x,df$tertile), simulate.p.value = TRUE)$p.value)

这是获取数据框中的p值:

data.frame(lapply(df[,-5], function(x) chisq.test(table(x,df$tertile), simulate.p.value = TRUE)$p.value))

感谢 RPub 的启发。 http://www.rpubs.com/kaz_yos/1204

【讨论】:

    猜你喜欢
    • 2020-06-26
    • 1970-01-01
    • 2020-10-15
    • 2021-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-26
    • 1970-01-01
    相关资源
    最近更新 更多