numpy.random.randn()与rand()、random.random()的区别

一、random.randn()和random.rand()

numpy中有一些常用的用来产生随机数的函数。randn()和rand()就属于其中一种
numpy.random.randn(d0,d1,…,dn)是从标准正态分布中返回一个或多个样本值。
numpy.random.rand(d0,d1,…,dn) 的随机样本位于[0,1) 中
两个函数中两个参数是代表生成的矩阵的维度

举例

import numpy as np

In [22]: data = np.random.randn(3,4)

In [23]: data
Out[23]:
array([[-0.34341494, -0.01541249, -0.18014056, -1.30215008],
       [ 0.82040243, -0.92564691,  0.79424176, -0.10651544],
       [-0.18457542,  0.87839392, -1.72359517,  1.24179385]])

In [25]: data2 = np.random.rand(3,4)

In [26]: data2
Out[26]:
array([[0.09158799, 0.53545735, 0.58871176, 0.80192998],
       [0.28538348, 0.72147261, 0.16966679, 0.43919518],
       [0.04111255, 0.86852787, 0.33768262, 0.60136455]])

二、 random.random(size)和np.random.randint(low[,high,size,dtype])

np.random.random([size])

返回指定size的[0,1)随机数矩阵,random_sample、ranf、sample和它一样

完整写法
In [31]: data3 = np.random.random(size = [3,4])

In [32]: data3
Out[32]:
array([[0.87703539, 0.65523555, 0.49788619, 0.57268491],
       [0.98282024, 0.71298843, 0.49050688, 0.82435907],
       [0.90001183, 0.10372421, 0.84826974, 0.47280953]])

简写默认也是size参数
In [33]: data4 = np.random.random( [3,4])

In [34]: data4
Out[34]:
array([[0.4599745 , 0.76894416, 0.41237954, 0.52579266],
       [0.15208313, 0.16877556, 0.48199189, 0.38891733],
       [0.20531384, 0.0851145 , 0.30071104, 0.8035863 ]])

np.random.randint(low,high,[size])

返回low<=n<high范围的整数,random_integers为dtype=np.int类型

返回3行四列的数字,数据为大于等于2小于8的整数
 In [35]: data5 = np.random.randint(2,8,[3,4])

In [36]: data5
Out[36]:
array([[2, 2, 7, 4],
       [3, 6, 7, 7],
       [7, 5, 3, 5]])

猜你喜欢

转载自blog.csdn.net/ZZQHELLO2018/article/details/85012715
今日推荐