是否、何时以及为何使用 numpy.random.rand(...) 和 numpy.random.random(...)?

问题描述 投票:0回答:1

以我的理解,如果你只需要区间 [0,1[ 中的一个伪随机数,你可以使用

numpy.random.rand()
numpy.random.random()
中的任何一个。如果您需要某种形式的更多数字,例如 2×3 矩阵,您有四种方法可以实现:

import numpy
x,y=2,3
s=(x,y)
numpy.random.random(s) # 1
numpy.random.rand(*s) # 2
numpy.random.random((x,y)) # 3
numpy.random.rand(x,y) # 4

文档说

rand(…)
包装
random_sample(…)
并且
random(…)
别名
random_sample(…)
。那么为什么两个函数会执行相同的操作(如果需要从调用中获取多个数字,则需要进行语法转换)?由于用户不鼓励使用
random_sample(…)
,同样的劝阻是否也适用于
rand(…)
random(…)
?为什么或为什么不?

python python-3.x packing argument-unpacking numpy-random
1个回答
0
投票

numpy.random.rand(…)
numpy.random.random(…)
的标题说,“> … >传统随机生成>”。

因此,这两个功能都是遗留功能,即过时的。使用其他东西代替。当前的选择是来自 随机生成器numpy.random.Generator.random

感谢让我意识到这一点,请访问 http://stackoverflow.com/users/9769953 .

© www.soinside.com 2019 - 2024. All rights reserved.