如何在matlab中生成一个随机矩阵,每个值重复两次?

时间:2015-04-22 10:41:23

标签: matlab matrix random

我需要制作一个随机矩阵,比如大小为3X4,其中值将介于1-6之间,每个值将被重新划分两次(在矩阵中的随机位置)。  我怎样才能做到这一点? 感谢

1 个答案:

答案 0 :(得分:9)

您可以创建一个包含数字1到6且需要重复的数组,比如说

A=[1:6, 1:6];

然后使用randperm对该数组进行洗牌,并将其重新整形为3乘4矩阵

>> B=reshape(A(randperm(12)), 3, 4)
B =
     5     4     6     1
     2     3     5     4
     6     2     1     3