【发布时间】:2018-09-24 07:48:30
【问题描述】:
我想在 0.00001 到 100000 之间创建随机点,我尝试使用以下代码
np.random.uniform(0.00001,100000,100)
我有两个问题。 第一个问题是我想要一个像 random_state = 123 这样的随机种子,这样我就可以复制我的代码。 第二个问题与 random.uniform 的均匀性有关。尽管有函数名称,但数组似乎不是从均匀分布中绘制的(见图)。
编辑:我想我没有正确解释第二个问题。我希望我的值从 1e-5 均匀分布到 1e+5。结果是均匀分布的,但它不包含非常小的数字。这就是为什么我将其更改为
temp = 10 ** np.random.uniform(-5,5,100)
这解决了我打算在第二个问题中解决的问题。
【问题讨论】:
-
在如此大的时间间隔内,眼睛测试对于均匀性不是很好 - 看看
np.histogram有更多样本。 -
我敢打赌,您期待的是数字长度的均匀分布,好像在 1 到 10 之间滚动一个值与在 10000 到 100000 之间滚动一个值一样可能。
标签: python arrays numpy random random-seed