У меня есть два фрейма данных, один из которых представляет собой список пар людей, аналогичный приведенному ниже (но примерно со 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] ]] ) )
? - person IRTFM   schedule 26.08.2016library(reshape2); melt(cor(df))
. - person eipi10   schedule 26.08.2016