2024年3月9日发(作者:)

numpy中生成随机数的技巧汇总

是numpy的一个子模块,用于生成随机数,在新版的numpy中,

有以下两种生成随机数的方式

1. RandomState

2. Generator

其中Generator是新版本推荐的方式,RandomState是之前旧版本的方式,只是为

了考虑兼容性,依然进行了保留,通过例子来看下两种方式生成随机数的不同

>>> import numpy as np

# RandomState

>>> ()

0.266438

# Generator

>>> rng = t_rng()

>>> ()

0.7788651549635489

两种方式对应的方法大部分是相同的,但是也有小部分不一样,在使用中需要注意,

比如rand, randn等方法是RandomState独有的,而integers方法是Generator独有

的。

计算器模拟产生的随机数都是伪随机数,通过设置随机数种子发生器,可以保证每次

随机的结果都相同,用法如下# 未设置,每次随机的结果不同

>>> ()

0.8764

>>> ()

0.22642

# 设置相同的seed, 可以保证重复性

>>> (5)

>>> ()

0.223948

>>> (5)