我需要使用MATLAB的函数rand在0和1之间生成50,000个均匀随机数。我做的是
r = randi([0 1],1,50000)
histogram(r);
而不是0到1之间的数字,例如0.5,0.3,我只得到0和1.这样做的正确方法是什么?我在网上查了一下,但找不到任何有用的东西。
答案 0 :(得分:0)
randi
生成一个随机整数。使用rand()
在(0, 1)
区间内生成随机数。对于其他范围,您可以使用以下方法之一:
[A B]
且randi
rand()
生成随机数,并通过相乘将其缩放到所需范围;这将包括整个范围内的小数。答案 1 :(得分:0)
试试这个,
xmin = 0
xmax = 1
n = 50000
r = xmin+rand(1,n)*(xmax-xmin);
答案 2 :(得分:0)
这应该可以解决问题:
r = rand(50000,1);
histogram(r);