【问题标题】:How can I use contingency table, and fisher test in R, given counts给定计数,我如何在 R 中使用列联表和 Fisher 测试
【发布时间】:2021-06-09 01:48:13
【问题描述】:

我知道 table() 通过计数从数据中创建一个包含两个分类变量的表。但我的问题是我已经得到了一张桌子。

我应该使用 chisq.test() 和 Fisher.test() 来测试花色是否会影响颜色存活率。如果我创建一个小标题

color_tibble <- tibble(
White = c(143, 130),
Light = c(184, 100),
Dark = c(176, 107) )                              

chisq.test(color_tibble$White)

这适用于对所有三种颜色进行 chisq 测试,但我无法使用 Fisher 测试,因为它不是实际的列联表,也没有两个分类变量可以比较。我没有实际的数据集/框架来使用 table() 创建表。

理想情况下,我想将分类变量“颜色”与白色/浅色/深色值和“幸存者”值幸存/死亡进行比较。

希望这对你有意义

【问题讨论】:

  • 此外,创建源数据应该相当简单:rbind( data.frame(color="White",result=c(rep( "Survived",143), rep("Died",130))), data.frame(color="Light",result=c(rep( "Survived",184), rep("Died",100))), data.frame(color="Dark",result=c(rep( "Survived",176), rep("Died",107))) )。在上面运行table(),你就会得到你所拥有的。尽管 chisq.test 和 fisher.test 完全没有必要,但可以像您一样在现成的桌子上愉快地工作

标签: r testing datatable tibble contingency


【解决方案1】:

我认为chisq.test 适用于矩阵。这样做

M <- as.matrix(color_tibble)
dimnames(M) <- list(survivorship = c("survived", "died"),
                    colors = c("White", "Light", "Dark"))
M

chisq.test(M)

    Pearson's Chi-squared test

data:  M
X-squared = 9.8681, df = 2, p-value = 0.007197

fisher.test(M)

    Fisher's Exact Test for Count Data

data:  M
p-value = 0.007558
alternative hypothesis: two.sided

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-18
    • 2021-06-28
    • 2021-09-19
    • 2013-02-05
    • 2015-05-12
    • 1970-01-01
    相关资源
    最近更新 更多