具有整数随机行的矩阵

时间:2017-12-09 18:19:42

标签: r matrix random integer

命令

Y

生成一个整数随机矩阵(9行和12列),整数值从1到12.我想知道是否有这个代码的版本生成一个矩阵,其行是整数随机行,值为1到12(没有重复)。我找到了一个"琐碎的"回答这个问题;与

 matrix(sample.int(12, 9*12, TRUE), 9, 12)

我获得了这种矩阵,但是这些行都是相同的(这是重复9次的同一行)。

1 个答案:

答案 0 :(得分:4)

replicate函数(重复sample(12)指定次数的操作)返回一个矩阵,其列主要方向可以翻转到所需的行方向t:< / p>

t( replicate(9, {sample(12)} ) )
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
 [1,]    9   11    5    3    4    6    2    8   10    12     7     1
 [2,]    4    5   12    6    8    2    9    1   11    10     7     3
 [3,]    9    8   10   12    2    6    3    7    4     1    11     5
 [4,]    4    9    1    2    6   11    8    5    7     3    12    10
 [5,]    1    2    4    5   11    6    3    8   10     9    12     7
 [6,]    4    8   10   12    5    9    2    7   11     1     3     6
 [7,]    5    7    8    4    1    6   10   11    2     3    12     9
 [8,]    2    4   10    1   12    5    7    6   11     3     8     9
 [9,]    2    7    9   11    8    1   12   10    6     5     3     4

replicate函数用于许多模拟代码中。