我有以下数据框:
y <- data.frame(group = letters[1:5], a = rnorm(5) , b = rnorm(5), c = rnorm(5), d = rnorm(5) )
如何获取一个数据框,该数据框给出每行的 a、b 列和 c、d 列之间的相关性?
就像是:sapply(y, function(x) {cor(x[2:3],x[4:5])})
谢谢你,
S
你可以使用apply
> apply(y[,-1],1,function(x) cor(x[1:2],x[3:4]))
[1] -1 -1 1 -1 1
Or ddply
(尽管这可能有点矫枉过正,并且如果两行具有相同的group
它将对这两行进行列 a&b 和 c&d 的关联):
> ddply(y,.(group),function(x) cor(c(x$a,x$b),c(x$c,x$d)))
group V1
1 a -1
2 b -1
3 c 1
4 d -1
5 e 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)