R
にmice
パッケージを使用して、大量の欠落のあるデータセットの複数の代入を実行しています。代用プロセスや後で分析するために重要な変数が未加工データセットにあります。しかし、私はcor()
を使って相関行列を作成し、いくつかの変数を含まないようにします。 x
がmice
関数によって作成mids
オブジェクトであり、一方は通常mira
オブジェクトを作成するために、繰り返し分析を実行するwith
を使用する場合、通常、単純なデータセットx
ため、cor(x[,3:7])
は7を介してカラム3の相関行列を生じる、次いでpool
を使用して、mipo
プール結果オブジェクトを作成します。ただし、with
の2番目の要素は、データセットの列を参照する式とし、cor()
に入る入力の種類ではありません。 x
がmids
オブジェクトの場合、cor(x[,3:7])
は機能せず、どちらもwith(x, cor(x[,3:7]))
ではありません。複数の代用データセットの列のサブセットの相関行列
複数の代用データセットから変数のサブセットのプール相関行列を作成するにはどうすればよいですか?
#reproducible example
x = data.frame(matrix(rnorm(100),10,10)) #create random data
x[9:10,] = NA #add missingness
x.mice = mice(x) #make imputed data set
cor(x.mice[,3:7]) #doesn't work
with(x.mice, cor(x.mice[,3:7])) #doesn't work
with(x.mice[,3:7], cor()) #doesn't work
[再現可能な例]を追加することを検討してください(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)へあなたの質問:それは私たちがあなたを助けてくれるのを助けるでしょう。 –
良い点、Vincent Guillemot。私は質問に1つ追加しました。ありがとう。 –
データの列に名前を付けると、おそらく扱いが簡単になります。 (マウスを呼び出す前に)関連する場所で 'x = setNames(x、letters [1:10])'を使うと、 ''(x.mice、cor(cbind(a、b)))」となるでしょう。 – user20650