1

うまくいけば、これは私が見つけることができなかった簡単な答えです:

大きな行列の行 (サブジェクト) と列 (変数) のさまざまなサブセットで多数の統計手順を比較するシミュレーションを作成しようとしています。

行のサブセットは、サブジェクト ID 番号を使用してかなり簡単に作成できましたが、列についてsample()はもう少し問題が発生しています。

基本的に、私ができるようにしたいのは、列のインデックス番号のランダムなサンプルを作成し、それを使用して新しいマトリックスを作成することです。これまでのところ最も近いのは次のとおりです。

testmat <- matrix(rnorm(10000),nrow=1000,ncol=100)
column.ind <- sample(3:100,20)
teststr <- paste("testmat[,",column.ind,"]",sep="",collapse=",")

testmat[,column.ind]これにより、サンプリングされたインデックス番号ごとにを持つ文字列が得られます。それを関数に簡単にプラグインしてcbind()新しいマトリックスを作成する方法はありますか? 私が見逃している他の明らかな方法はありますか?

ループを使用して (つまりcbind(matrix,newcolumn)、何度も) 実行できましたが、使用しているマトリックスが非常に大きく、これを何度も実行するため、これはかなり遅くなります。よりエレガントで迅速なカップル ライン ソリューションがあることを願っています。

4

1 に答える 1

8

試しましたtestmat[, column.ind]か?

行と列は、論理ベクトル、一連の名前、またはインデックスの番号を使用して、同じ方法でインデックスを付けることができます。

例については、http: //ideone.com/EtuUNを参照してください。

于 2010-07-19T14:17:57.020 に答える