我有两个数据框,一个是一组成对的个体列表,类似于下面的示例(但大约有150对):
ID_1 ID_2
X14567 X26789
X12637 X34560
X67495 X59023
另一个数据框每个人都有一列,其中包含与该个人相关的数字值。总共约有300列和300行。例如:
X14567 X12637 X26789 X67495 X34560 X59023
0.41 0.29 0.70 0.83 0.41 0.30
0.59 0.44 0.20 0.94 0.03 0.97
0.48 0.91 0.78 0.92 0.40 0.09
0.07 0.21 0.42 0.14 0.96 0.96
0.33 0.13 0.53 0.04 0.52 0.49
0.94 0.28 0.37 0.26 0.11 0.09
我希望找出每对个体之间这些值的相关性,最终得到类似以下的结果:
ID_1 ID_2 Correlation
X14567 X26789 -0.25
X12637 X34560 -0.25
X67495 X59023 -0.11
有没有一种方法可以从第一个数据框中提取值,以指定我需要在哪两列之间找到相关性的名称,以便可以轻松地针对第一个数据框的每一行重复此过程?非常感谢您的帮助。
apply(df1, 2, function(x) cor( df2[[ x[1] ]], df2[[ x[2] ]] ) )
吗? - IRTFMlibrary(reshape2); melt(cor(df))
来实现。 - eipi10