r - 两个数据帧之间的行相关性

标签 r dataframe correlation plyr

我有 2 个数据框,每个数据框有 5 列和 100 行。

id       price1      price2     price3     price4     price5
 1         11.22      25.33      66.47      53.76      77.42
 2         33.56      33.77      44.77      34.55      57.42
...

我想获得相应行的相关性,基本上

for(i in 1:100){    
cor(df1[i, 1:5], df2[i, 1:5])    
}

但不使用 for 循环。我假设有某种方法可以使用 plyr 来做到这一点,但似乎无法做到正确。有什么建议吗?

最佳答案

根据您想要一个酷还是快速的解决方案,您可以使用其中之一

diag(cor(t(df1), t(df2)))

这很酷但很浪费(因为它实际上计算了您并不真正需要的所有行之间的相关性,因此它们将被丢弃)或

A <- as.matrix(df1)
B <- as.matrix(df2)
sapply(seq.int(dim(A)[1]), function(i) cor(A[i,], B[i,]))

它只做你想要的事情,但需要输入更多内容。

关于r - 两个数据帧之间的行相关性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9136116/

相关文章:

r - 没有得到置信区间 ggplot R

python - 如何使用 pandas groupby.filter 保留至少一个值小于 24 的组

python pandas如何有选择地删除重复项

python - 模拟满足协方差矩阵的时间序列

python - 如何确定数据帧与 Nan 的相关性?

python - 如何在 Python 中有效地将字符串类型的数据框列转换为日期时间?

R 更改嵌套列表的类型

r - 使用 ggplot 进行颜色渐变

r - 如何在数据框中按行获取值的所有组合

python - 找到 Pandas 时间序列之间的相关性