次のようなデータの相関行列を確立しています
df <- structure(list(V1 = c(56, 123, 546, 26, 62, 6, NA, NA, NA, 15
), V2 = c(21, 231, 5, 5, 32, NA, 1, 231, 5, 200), V3 = c(NA,
NA, 24, 51, 53, 231, NA, 153, 6, 700), V4 = c(2, 10, NA, 20,
56, 1, 1, 53, 40, 5000)), .Names = c("V1", "V2", "V3", "V4"), row.names = c(NA,
10L), class = "data.frame")
これにより、次のデータ フレームが得られます。
V1 V2 V3 V4
1 56 21 NA 2
2 123 231 NA 10
3 546 5 24 NA
4 26 5 51 20
5 62 32 53 56
6 6 NA 231 1
7 NA 1 NA 1
8 NA 231 153 53
9 NA 5 6 40
10 15 200 700 5000
私は通常、このコマンドを使用して相関行列を確立するために complete.obs コマンドを使用します
crm <- cor(df, use="complete.obs", method="pearson")
ここでの私の質問は、complete.obs がデータをどのように扱うかということです。このように、「NA」の値を持つ行を省略して、「NA」のないテーブルを作成し、相関行列を一度に作成しますか?
df2 <- structure(list(V1 = c(26, 62, 15), V2 = c(5, 32, 200), V3 = c(51,
53, 700), V4 = c(20, 56, 5000)), .Names = c("V1", "V2", "V3",
"V4"), row.names = c(NA, 3L), class = "data.frame")
または、ペアごとに「NA」値を省略しますか。たとえば、V1 と V2 の間の相関を計算するとき、V3 の NA 値を含む行 (私の例では行 1 と 2 など) も省略されますか?
もしそうなら、ペアワイズ方式で NA 値を省略して、可能な限り多くのデータを予約するコマンドを確立することを楽しみにしています。
どうもありがとう、