1

Rを置き換えて行列の列を並べ替えるにはどうすればよいですか?rmperm {sna}という関数を見つけましたが、列と行の両方を並べ替えますが、列を並べ替えたいだけです。

編集:行列を1000回並べ替えてから階層的クラスタリングを実行する必要があるため、1000回のランダム化後に最終的なツリーが作成されます。

どうもありがとう。

4

1 に答える 1

1

関数を試してくださいsample()

> m <- matrix(as.integer(runif(9,0,9)),ncol=3)
> m
     [,1] [,2] [,3]
[1,]    5    0    5
[2,]    6    0    0
[3,]    2    1    3
> permuted <- m[,sample(ncol(m), 10, replace=TRUE)]
> permuted
     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,]    5    0    5    5    5    5    0    5    5     5
[2,]    0    0    0    0    6    0    0    0    6     0
[3,]    3    1    3    3    2    3    1    3    2     3

最初の引数sample()はサンプルの範囲を指定し(1:x)、2番目の引数は選択するアイテムの数を指定し(size)、replaceパラメーターは置換を使用するかどうかを指定します(サイズ> xの場合に必要)。

于 2012-04-16T15:20:55.817 に答える