【发布时间】:2014-02-20 04:51:29
【问题描述】:
我有以下数据框:
set.seed(1)
y <- data.frame(a1 = rnorm(5) , b1 = rnorm(5), c1 = rnorm(5), a2 = rnorm(5), b2 = rnorm(5), c2 = rnorm(5))
我想获得列对的相关性: cor(a1,a2), cor(b1,b2), cor(c1,c2)
我尝试了以下方法,但 NA 显示为输出:
apply(y,2,function(x) cor(x[1],x[3]))
我想得到相当于
的结果cor(y[,1],y[,4])
cor(y[,2],y[,5])
cor(y[,3],y[,6])
在我的实际数据框中,我有更多的列对。
有什么想法吗?
感谢您的支持。
【问题讨论】:
-
如果你不介意额外的输出,你可以做
cor(y)? -
为什么不直接将 x[n] 替换为 y[n] 呢?
-
我确实介意额外的输出,因为我的实际数据框中有太多变量。谢谢!
标签: r apply correlation