python - 在numpy中生成指定间隔(不是[0,1))内均匀分布的随机数的NxM数组

标签 python numpy random

我知道 numpy.random.rand() 命令,但是似乎没有任何变量允许您调整将数字选择为 [0,1) 以外的值的统一间隔。

我考虑使用for循环,即启动所需大小的零数组,并使用numpy.random.unifom(a,b,N)在区间(a,b)中生成N个随机数,然后将这些进入启动数组。我不知道这个模块会创建一个任意维度的数组,就像上面的兰特一样。这显然是不优雅的,尽管您主要关心的是运行时间。我认为这种方法的运行时间比从一开始就使用适当的随机数生成器要长得多。

编辑和附加想法:我正在工作的区间是 [0,pi/8),小于 1。严格来说,如果我只是重新缩放,但相乘,我不会影响生成数字的随机性每个生成的随机数显然都会增加额外的计算时间,我认为元素数量的顺序是一个因素。

最佳答案

np.random.uniform接受低值和高值:

In [11]: np.random.uniform(-3, 3, 7)  # 7 numbers between -3 and 3
Out[11]: array([ 2.68365104, -0.97817374,  1.92815971, -2.56190434,  2.48954842, -0.16202127, -0.37050593])

关于python - 在numpy中生成指定间隔(不是[0,1))内均匀分布的随机数的NxM数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54597865/

相关文章:

python numpy - 无法比较 2 个数组

python - 连接两个大小不等的 numpy 数组并根据公共(public)列填充第三个数组

java - 如何在 Java 中创建包含随机生成的数字的字符串列表?

python - 准备 pandas 数据框以使用误差条进行绘图

python - 如何在 Python 中绘制具有可变宽度 bin 的直方图?

python - plt.tight_layout() 与 sns.clustermap

python - Cython 比 Numpy 慢(来自 Python Cookbook 的示例)

Python - 随机输出具有结构

c - 为什么我的 C 随机数生成器只返回 "42"?

python - 使用 NLTK 在 Python 中的文件的特定区域中使用 sent_tokenize?