我有两个 data.frames 看起来像:
DF1
Col1 Col2 Col3 Col4
0.1854 0.1660 0.1997 0.4632
0.1760 0.1336 0.1985 0.4496
0.1737 0.1316 0.1943 0.4446
0.1660 0.1300 0.1896 0.4439
DF2
Col1 Col2 Col3 Col4
0.2456 0.2107 0.2688 0.5079
0.2399 0.1952 0.2356 0.1143
0.2375 0.1947 0.2187 0.0846
0.2368 0.1922 0.2087 0.1247
我想在两个 data.frames 之间执行 wilcox.test ,特别是在成对的列之间,这样:
test1: between Col1 of DF1 and Col1 of DF2
test2: between Col2 of DF1 and Col2 of DF2
等等。
我使用了以下脚本:
for (i in 1:length(DF2)){
test <- apply(DF1, 2, function(x) wilcox.test(x, as.numeric(DF2[[i]]), correct=TRUE))
}
不幸的是,该脚本的输出与使用以下脚本执行的相同测试的输出不同:
test1 = wilcox.test(DF1[,1], DF2[,1], correct=FALSE)
test2 = wilcox.test(DF1[,2], DF2[,2], correct=FALSE)
由于在真实的 data.frames 中我有大约 100 列和 200 行(它们与维度相等)我不能按列制作测试列。
之后dput(DF1)
:
structure(list(Col1 = c(0.1854, 0.1760, 0.1737, 0.1660,....), class = "data.frame", row.names = c(NA, -100L)))
同样对于DF2