我无法理解mat实验室编码

时间:2012-08-25 08:25:32

标签: matlab

生成at的对数正态分布值的散点图 区间[5; 50]中的至少1000个随机数来自区间上的均匀分布 [0; 1]
。 到目前为止我已经这样做了

%declaring intervals
a=5;b=50;
%creating 1000 random number within the interval [5,50]
r = a + (b-a).*rand(1000,1);

我无法理解这部分“从间隔的均匀分布中得出 [0; 1]

2 个答案:

答案 0 :(得分:2)

rand为您提供01之间的伪随机数。从该区间中选择任何特定数字的概率对于来自该区间的任何其他数字是相同的,因此rand使用的概率密度函数被称为“均匀分布”。

所以,你开始很好:)

答案 1 :(得分:1)

我认为你应该将你想要的数字范围映射到区间[0,1]。也就是说,您将间隔划分为46个等间隔的子间隔,这样每个间隔的交集为空,它们的并集为[0,1]。然后,对于每个子区间,您关联输出样本范围的值,然后[0,1]中的样本允许您从集合中创建随机样本[5:50]

例如,如果您想从[1:10]创建样本,您可以选择在[0,1]上生成均匀分布的样本。如果样本在区间[0,0.1]中,则输出样本值为1.如果它在区间[0.2,0.3]中,则您的值将为3等。

如果您在询问实际上均匀分布是什么,那么它只是一个分布,其中样本空间中的每个点都具有相同的被选择概率。有关详细信息http://en.wikipedia.org/wiki/Uniform_distribution_%28continuous%29

,请参阅此处