numpy.random.randn(d0,d1,…,dn)
numpy.random.randn(d0,d1,…,dn)
返回一个或一组符合“标准正态分布“的样本。dn表格每个维度,返回值为指定维度的array。
标准正态分布—-standard normal distribution
标准正态分布又称为u分布,是以0为均值、以1为标准差的正态分布,记为N(0,1)。
1. 当没有参数时,返回单个数据
>>> np.random.randn() 0.2856573215723444
2. 指定维数
>>> np.random.randn(2,4) array([[-1.80031882, 0.10318817, 1.05343294, -0.74251429], [-0.02053998, 0.58558613, -1.02284653, 0.33441884]]) >>> np.random.randn(2,2,2) array([[[ 0.76631648, -1.94176884], [-1.08613881, 0.70950631]], [[-1.04016301, -0.15358818], [-0.95679036, -0.23024994]]])
3. 生成符合$N(\mu, \sigma^2)$的样本
sigma * np.random.randn(...) + mu
>>> 2*np.random.randn()+1 -1.6004536471034108 >>> 2.5*np.random.randn(2,4)+3 array([[ 3.58233674, -0.8538981 , 3.11623316, 3.15277312], [ 5.40095888, -1.34397929, 5.51338625, 6.74921732]])
numpy.random.standard_normal(size=None)
numpy.random.standard_normal(size=None)
与前面的功能一模一样,也是生成符合“标准正态分布”的样本。不同之处在于其参数是元组形式。
>>> np.random.standard_normal() -0.42487006671195265 >>> np.random.standard_normal(10) array([ 0.78368072, 1.80768154, -0.49297587, 0.66436509, 0.35496744, 0.52050209, 0.06490782, -0.6404993 , -1.37450919, 0.27419667]) >>> np.random.standard_normal((2,2)) array([[ 0.15698487, -1.1685891 ], [-1.11065158, 0.61010709]]) >>> 2*np.random.standard_normal((2,2))+1 array([[ 1.01941899, 1.46028102], [-0.39625573, -1.52947869]])
参考链接:
2. numpy.random.standard_normal官方文档
3. CSDN周正己-numpy.random.randn()用法
来源:https://www.cnblogs.com/lfri/p/12249926.html