13

o = c(1,2,3,4)同じベクトルを複数回バインドして、次のようなマトリックスを取得するにはどうすればよいですか:

o = array(c(1,2,3,4,1,2,3,4,1,2,3,4), dim(c(4,3))
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    2    2    2
[3,]    3    3    3
[4,]    4    4    4

より良い方法で:o = cbind(o,o,o)そしておそらくより一般化された ( duplicate)? の要素の色を指定するには、これが必要ですtextplot

4

3 に答える 3

16

Rはリサイクルします。それは非常に環境にやさしいです:

o=c(1,2,3,4) 
> matrix(o,nrow = 4,ncol = 4)
     [,1] [,2] [,3] [,4]
[1,]    1    1    1    1
[2,]    2    2    2    2
[3,]    3    3    3    3
[4,]    4    4    4    4
于 2012-12-03T23:04:02.263 に答える
15

使用できますreplicate

> o = c(1,2,3,4) 
> replicate(4, o)
     [,1] [,2] [,3] [,4]
[1,]    1    1    1    1
[2,]    2    2    2    2
[3,]    3    3    3    3
[4,]    4    4    4    4
于 2012-12-03T23:11:16.803 に答える
0

アウターに使えます

outer(1:4,1:4,function(x,y)x)
     [,1] [,2] [,3] [,4]
[1,]    1    1    1    1
[2,]    2    2    2    2
[3,]    3    3    3    3
[4,]    4    4    4    4
于 2012-12-03T23:57:12.503 に答える