2017-08-08 6 views
2

コミュニティ、Rのデータフレームを照会

データフレームがあります。データフレームはユーザー、ここでは 'ermu'、 'joba'、 'mamu'で構成されています。値は、レーティングに基づく相関値です。今私はデータフレームを照会したい "私の現在のユーザー 'joba'との相関が最も高いユーザー名を表示する。"どのようにRでこれを達成するには?ここで

は、データフレームである:

  ermu    joba    mamu 
ermu  1.0    -0.83    -0.66 
joba  -0.83    1.0    0.86 
mamu  -0.66    0.86    1.0 

敬具、 ヨッヘン

答えて

2

あなたは次のようにNAの対角線は、クエリ(1の相関を除外するように)設定できます

diag(df)=NA 
rownames(df)[which.max(df$joba)] 
[1] "mamu" 

希望すると便利です!

+0

ありがとうフロリアン。それが解決策に私をもたらすでしょう。とにかく、私はエラーが発生しましたが、私はそれを理解することができます:correlationMatrix $ jobaのエラー: アトミックベクトルの$演算子が無効です – Jochen

+0

おそらくあなたのデータフレームはデータフレームではなく、マトリックスです。私のコードを実行する前に 'df = as.data.frame(df)'を実行することができます。 – Florian

+1

パーフェクト - それは動作します! – Jochen