例如,如何随机生成包含8 0s和4 1s 的1 x 12矩阵?
喜欢这个矩阵 [1 0 0 1 0 0 0 1 0 0 1 0]
如果我再次生成,它会返回一个不同的矩阵 [0 0 1 0 0 1 1 0 1 0 0 0]
创建一个向量,该向量以所需的1s 数开始,后跟所需的0s 数,并用于对其randperm进行随机播放:
n = 8;
m = 4;
M = [ones(m,1), zeros(n,1)];
M = M(randperm(numel(M)))
Run Code Online (Sandbox Code Playgroud)
或者你可以略有不同:http://www.mathworks.com/matlabcentral/answers/83289-how-can-i-create-a-random-binary-matrix-with-a-specified-number-of- 1-S-和-0-S