r - R中列联表(4x2)的卡方检验
问题描述
我在 R 中的 4x2 列联表上计算卡方检验时遇到问题。我的脚本如下所示:
# Read data
read.table("Mortality_test.txt")
# Assign a name to the data
mortality<- read.table("Mortality_test.txt", ,col.names=c('treatment','dead'), header=TRUE, sep="\t", na.strings="NA", dec=",", strip.white=TRUE)
table(mortality)
当我运行时,table(mortality)
我得到一个列联表,如下所示:
dead
treatment no yes
A 63 7
B 61 9
C 68 2
D 63 7
我现在的问题是,我想比较不同治疗(A,B,C,D)之间的死亡人数是否有统计差异。如果我没记错的话,我可以用桌子上的卡方检验来做到这一点。但是,我不确定下一步该采取哪一步。
解决方案
您具有chisq.test
在列联表上执行 chi 检验的功能。
在这里,和你的桌子
dead <- read.table(text = "treatment no yes
A 63 7
B 61 9
C 68 2
D 63 7",header = T)
> dead
treatment no yes
1 A 40 15
2 B 61 9
3 C 68 2
4 D 63 7
您需要选择两列 no 和 yes:
chisq.test(dead[,2:3])
Pearson's Chi-squared test
data: dead[, 2:3]
X-squared = 4.6996, df = 3, p-value = 0.1952
这在治疗之间没有区别。要查看另一个不同的示例:
dead <- read.table(text = "treatment no yes
A 55 12
B 61 9
C 68 2
D 63 7",header = T)
A 治疗真的不同的地方:
Pearson's Chi-squared test
data: dead[, 2:3]
X-squared = 8.4334, df = 3, p-value = 0.03785
推荐阅读
- php - 如何在codeignitor中显示来自MYSQL的数据?
- android - 我可以在 xml 中剪掉底层项目的背景颜色吗?
- typescript - Kendo Sortable / Integration - Grid - 特定刷新后不排序
- reactjs - 如何在 Firebase 中只显示一个特定用户而不是全部?
- python - 更改数据框中的特定单元格 - 复制错误
- python - 在新的 DataFrame() 中更快地重新组织我的数据
- android - 如何在静音选项上修复通知 setSound
- html - 浏览器大小更改时图像无法与文本正确对齐 - 有时会从屏幕上消失
- python - 有没有一种方法可以将整个 jupyter 笔记本的输出保存到 txt 文件或类似文件中,而不使用命令行,而是从笔记本内部?
- selenium - 如何在运行中从 Perfecto 中选择可用设备