np.random的几种用法

  • Post author:
  • Post category:其他



numpy.random.seed()与numpy.random.RandomState()

两者实现的作用是一样的,都是使每次随机生成数一样。

numpy.random.rand()

用法:numpy.random.rand(d0, d1, …, dn)

解释:生成一个[0,1)之间的均匀分布的随机浮点数或N维浮点数组。

numpy.random.randn()

用法:numpy.random.randn(d0, d1, …, dn)

解释:生成一个浮点数或N维浮点数组,取数范围:标准正态分布的随机样本数。若要获得一般正态分布
这里写图片描述
则可用

sigma * np.random.randn(…) + mu

进行表示 。

numpy.random.randint()

用法:numpy.random.randint(low, high=None, size=None, dtype=’l’)

解释:生成一个整数或N维整数数组,取数范围:若high不为None时,取

[low,high)

之间随机整数,否则取值

[0,low)

之间随机整数。

numpy.random.random_integers()

用法:numpy.random.random_integers(low, high=None, size=None)

解释:生成一个整数或一个N维整数数组,取值范围:若high不为None,则取

[low,high]

之间随机离散均匀分布的整数,否则取

[1,low]

之间随机离散均匀分布的整数。此外,若要将【a,b】区间分成N等分,也可以用此函数实现


a+(b-a)*(numpy.random.random_integers(N)-1)/(N-1)

numpy.random.random_sample()

用法:numpy.random.random_sample(size=None)

解释:生成一个

[0,1)

之间随机浮点数或N维浮点数组。

其他函数,

numpy.random.random()



numpy.random.ranf()



numpy.random.sample()

用法及实现都与它相同

numpy.random.choice()

用法:numpy.random.choice(a, size=None, replace=True, p=None)

解释:从序列a中获取元素,

若a为整数,元素取值为np.arange(a)中随机数;

若a为数组,取值为a数组元素中随机元素。

replace=False表示不能重复,replace=True可以重复。

p为与a长度相同的数组,可以决定a中每个元素随机出现的概率。p.sum()=1

numpy.random.shuffle()

用法:numpy.random.shuffle(x)

解释:对X进行重排序,如果X为多维数组,只沿第一条轴洗牌,输出为None,改变原来的X。

numpy.random.permutation()

用法:numpy.random.permutation(x)

解释:与numpy.random.shuffle(x)函数功能相同。输出为X洗牌后的新数组,原来的X不变。



版权声明:本文为sinat_41942180原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。