如何解决如何在 R 中运行 Kruskal-Wallis 或 Mann-Whitney 检验?
谁能给我一个关于如何运行下面的 Kruskal-Wallis 测试的提示?
我的目标:对于每个家庭来说,森林和城市之间细菌的增长(agg_rel_abund)是否有任何意义。
我在 R 中尝试过的代码:kruskal.test(Habitat ~ agg_rel_abund,data = my_data)
但显然我知道那是错误的......因为我没有达到我的目标......
让我简要解释一下我的数据:
样本有F和W两种。
当样本名称以 F 开头时,表示 Habitat 来自 Urban。
当样品名称以W开头时,表示栖息地来自森林。
如果想进行 Mann-Whitey 检验,或者任何非参数检验也可以......只要能够了解每个家庭在 Forest 和 Urban 之间的细菌生长(agg_rel_abund)的重要性。
样品 | 栖息地 | 家人 | agg_rel_abund |
---|---|---|---|
F10 | 城市 | 醋杆菌科 | 0 |
F2 | 城市 | 醋杆菌科 | 0 |
F3 | 城市 | 醋杆菌科 | 0 |
F7 | 城市 | 醋杆菌科 | 0.000132118 |
F8 | 城市 | 醋杆菌科 | 0 |
W10 | 森林 | 醋杆菌科 | 0 |
W13 | 森林 | 醋杆菌科 | 0 |
W3 | 森林 | 醋杆菌科 | 0 |
W6 | 森林 | 醋杆菌科 | 0 |
W9 | 森林 | 醋杆菌科 | 0 |
F10 | 城市 | 杆菌科 | 0.00488836 |
F2 | 城市 | 杆菌科 | 0.000924825 |
F3 | 城市 | 杆菌科 | 0.001056943 |
F7 | 城市 | 杆菌科 | 0.002378121 |
F8 | 城市 | 杆菌科 | 0.002906593 |
W10 | 森林 | 杆菌科 | 0.000264236 |
W13 | 森林 | 杆菌科 | 0.027876866 |
W3 | 森林 | 杆菌科 | 0.001585414 |
W6 | 森林 | 杆菌科 | 0.001056943 |
W9 | 森林 | 杆菌科 | 0.004492007 |
F10 | 城市 | 肉杆菌科 | 0 |
F2 | 城市 | 肉杆菌科 | 0 |
F3 | 城市 | 肉杆菌科 | 0 |
F7 | 城市 | 肉杆菌科 | 0 |
F8 | 城市 | 肉杆菌科 | 0.000132118 |
W10 | 森林 | 肉杆菌科 | 0 |
W13 | 森林 | 肉杆菌科 | 0 |
W3 | 森林 | 肉杆菌科 | 0.000132118 |
W6 | 森林 | 肉杆菌科 | 0 |
解决方法
这个问题应该经过交叉验证。
如果您想知道增长是否随家庭而变化,而不管栖息地如何,您可以使用 agg_rel_abund 作为因变量,Family 作为自变量进行 kruskal.test。
kruskal.test(agg_rel_abund ~ Habitat,data = my_data)
Kruskal-Wallis rank sum test
data: agg_rel_abund by Habitat
Kruskal-Wallis chi-squared = 0.0051556,df = 1,p-value = 0.9428
如果确定不同家族的生长没有差异,可以直接以agg_rel_abund为因变量,Habitat为自变量,直接进行kruskal.test。
kruskal.test(agg_rel_abund ~ Habitat,p-value = 0.9428
对于每个栖息地,您可以执行 kruskal.test 来检查家庭之间生长差异的显着性
library(dplyr)
for (i in unique(family$Habitat)) {
x <- kruskal.test(agg_rel_abund ~ family,data = family[family$Habitat==i,])
out[[i]] <- c(Kruskal.Wallis.H = x[["statistic"]][["Kruskal-Wallis chi-squared"]],Sig = x[["p.value"]],df = x[["parameter"]][["df"]])
}
out <- bind_rows(out)
out$Habitat <- unique(family$Habitat)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。