如果我有一个像这样的表:
group1 group2 frequency
A B 1
A A 2
A D 4
A C 1
B B 1
B D 5
B C 6
B A 3
. . .
. . .
. . .
我想通过“ group1”运行一个shapiro测试组。我想要的结果是:
group1 statistics p.value
A 0.9475648 1.228816e-01
B 0.7533102 6.058378e-06
. . .
. . .
. . .
有人有线索吗?
这是你想要的?
tab <- data.frame(group1=c("A","A","A","A","B","B","B","B"), group2=c("B","A","D","C","B","D","C","A"), frequency=c(1,2,4,1,1,5,6,3))
do.call(rbind, by(tab, tab$group1, function(x) unlist(shapiro.test(x$frequency)[c("statistic","p.value")])))
或这个:
library(plyr)
ddply(tab, .(group1),
function(x) unlist(shapiro.test(x$frequency)[c("statistic","p.value")]))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句