欠測値がたくさんある巨大な行列があります。変数間の相関関係を取得したい。
1.解決策はあり ますか
cor(na.omit(matrix))
以下より良いですか?
cor(matrix, use = "pairwise.complete.obs")
欠測値が20%を超える変数のみをすでに選択しています。
2.意味をなすための最良の方法はどれですか?
欠測値がたくさんある巨大な行列があります。変数間の相関関係を取得したい。
1.解決策はあり ますか
cor(na.omit(matrix))
以下より良いですか?
cor(matrix, use = "pairwise.complete.obs")
欠測値が20%を超える変数のみをすでに選択しています。
2.意味をなすための最良の方法はどれですか?
私は2番目のオプションに投票します。かなりの量の欠測データがあるように思われるので、スペースを埋めるための賢明な多重代入戦略を探しているでしょう。これを適切に行う方法に関する豊富なガイダンスについては、ハレルのテキスト「回帰モデリング戦略」を参照してください。
2番目のオプションの方が理にかなっていると思います。
Hmiscパッケージのrcorr関数の使用を検討してください。
これは非常に高速で、ペアごとの完全な観測のみが含まれます。返されたオブジェクトには行列が含まれています
これは、少数の観測値(そのしきい値が何であれ)またはp値に基づく相関値を無視できることを意味します。
library(Hmisc)
x<-matrix(nrow=10,ncol=10,data=runif(100))
x[x>0.5]<-NA
result<-rcorr(x)
result$r[result$n<5]<-0 # ignore less than five observations
result$r