2
我想在MatLab中生成仅由1和0组成的矩阵,但我希望能够设置任何值为1的可能性。我希望在那里成为90%的几率任何元素将是1而不是0.在Matlab中生成加权随机布尔矩阵
但是,我不希望那里总是有90%1s和10%0s。我只是希望这是更可能的情况。例如。我仍然希望它能够全部为0,或50%1%和50%0,只是不太可能。
谢谢你的帮助。
我想在MatLab中生成仅由1和0组成的矩阵,但我希望能够设置任何值为1的可能性。我希望在那里成为90%的几率任何元素将是1而不是0.在Matlab中生成加权随机布尔矩阵
但是,我不希望那里总是有90%1s和10%0s。我只是希望这是更可能的情况。例如。我仍然希望它能够全部为0,或50%1%和50%0,只是不太可能。
谢谢你的帮助。
我已经写的很清楚,简单的代码来理解:
mat5x5 = rand(5);
chanse_of_1s=.90% probability for 1s, just change it.
chanse_of_0s=.10% probability for 0s, just change it.
mat5x5 = arrayfun(@(x)sum(x >= cumsum([0, chanse_of_0s, chanse_of_1s])), mat5x5)-1
只恰克的chanses!
非常感谢你:) – Jack
我不知道我做错了什么,但如果我只是使用该代码,所有我得到输出是mat5x5 = 2? – Jack
@Jack:我已更新帖子,现在试试。 –