gpt4 book ai didi

python - random.seed() 不适用于 random.choice()

转载 作者:行者123 更新时间:2023-12-04 02:37:01 25 4
gpt4 key购买 nike

所以我试图生成一个具有所需概率的数字列表;问题是random.seed()在这种情况下不起作用。

M_NumDependent = []

for i in range(61729):
random.seed(2020)
n = np.random.choice(np.arange(0, 4), p=[0.44, 0.21, 0.23, 0.12])
M_NumDependent.append(n)
print(M_NumDependent)

如果 random.seed(),所需的输出应该相同有效,但每次运行时输出都不同。有谁知道是否有一个函数可以完成与 seed() 类似的工作为 random.choice() ?

最佳答案

numpy使用它自己的伪随机发生器。您可以使用 np.random.seed(..) [numpy-doc] 为 Numpy 随机生成器设置种子:

np.random.seed(2020)

例如:
>>> np.random.seed(2020)
>>> np.random.choice(np.arange(0, 4), p=[0.44, 0.21, 0.23, 0.12])
3
>>> np.random.seed(2020)
>>> np.random.choice(np.arange(0, 4), p=[0.44, 0.21, 0.23, 0.12])
3
>>> np.random.seed(2020)
>>> np.random.choice(np.arange(0, 4), p=[0.44, 0.21, 0.23, 0.12])
3
>>> np.random.choice(np.arange(0, 4), p=[0.44, 0.21, 0.23, 0.12])
2

如您所见,我们每次都选择 3而如果我们不播种随机生成器, 23 之后的下一个项目.

关于python - random.seed() 不适用于 random.choice(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61256979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com