2
这是我的简单代码:A = randi([0,1],[500,500]) 这段代码给出矩阵A(500 * 500),表示所有元素都是0或1。随机矩阵在matlab中的特殊顺序
是任何方式,我可以订购的1这个元素的数量是7000
是否可以指导我吗?
这是我的简单代码:A = randi([0,1],[500,500]) 这段代码给出矩阵A(500 * 500),表示所有元素都是0或1。随机矩阵在matlab中的特殊顺序
是任何方式,我可以订购的1这个元素的数量是7000
是否可以指导我吗?
如果我正确理解你的问题,我不认为兰迪函数是从这里开始的方式。
我建议以下程序:
1
7000元,其余的0
例如中的元素,下面的代码将工作:
A_init(1:7000) = 1; A_init(7001:500*500) = 0 % step 1
A = A_init(randperm(length(A_init))) % step 2
A = reshape(A,[500,500]) % step 3
关键是使用randperm
,它会生成索引的随机排列。
来验证具有正确数量的元素:
num_ones = length(find(A==1))