📅  最后修改于: 2020-06-17 04:38:08             🧑  作者: Mango
numpy.random.randn(d0, d1, …, dn) : 创建一个指定形状的数组,并按照标准正态分布将其填充为随机值。
如果提供了正参数,则randn会生成一个形状为(d0,d1,…,dn)的数组,其中填充了从均值0和方差1的单变量“正态”(高斯)分布采样的随机浮点数(如果d_i为浮点数,它们首先通过截断转换为整数)。如果未提供任何参数,则返回从分布中随机采样的单个浮点数。
参数:
d0,d1,…,dn:[int,可选]我们需要的返回数组的维数,
如果未提供任何参数,则返回单个Python浮点数。
返回:
定义形状的数组,填充有来自 标准正态分布的随机浮点样本。
代码1:随机构造一维数组
# Python程序说明numpy.random.randn()方法
import numpy as geek
# 一维阵列
array = geek.random.randn(5)
print("一维数组,用randnom值填充 : \n", array);
输出:
一维数组,用randnom值填充 :
[-0.51733692 0.48813676 -0.88147002 1.12901958 0.68026197]
代码2:随机构造2D数组
# Python程序说明numpy.random.randn()方法
import numpy as geek
# 2D阵列
array = geek.random.randn(3, 4)
print("二维数组填充有随机值 : \n", array);
输出:
二维数组填充有随机值 :
[[ 1.33262386 -0.88922967 -0.07056098 0.27340112]
[ 1.00664965 -0.68443807 0.43801295 -0.35874714]
[-0.19289416 -0.42746963 -1.80435223 0.02751727]]
代码3:随机构造3D数组
# Python程序说明numpy.random.randn()方法
import numpy as geek
# 3D阵列
array = geek.random.randn(2, 2 ,2)
print("3D数组填充有随机值 : \n", array);
输出:
3D数组填充有随机值 :
[[[-0.00416587 -0.66211158]
[-0.97254293 -0.68981333]]
[[-0.18304476 -0.8371425 ]
[ 2.18985366 -0.9740637 ]]]
代码4:使用随机创建的数组进行操作
# Python程序说明numpy.random.randn()方法
import numpy as geek
# 3D阵列
array = geek.random.randn(2, 2 ,2)
print("3D数组填充有随机值 : \n", array);
# 值乘以3
print("\nArray * 3 : \n", array *3)
# 或者我们直接通过
array = geek.random.randn(2, 2 ,2) * 3 + 2
print("\nArray * 3 + 2 : \n", array);
输出:
3D数组填充有随机值 :
[[[ 1.9609643 -1.89882763]
[ 0.52252173 0.08159455]]
[[-0.6060213 -0.86759247]
[ 0.53870235 -0.77388125]]]
Array * 3 :
[[[ 5.88289289 -5.69648288]
[ 1.56756519 0.24478366]]
[[-1.81806391 -2.6027774 ]
[ 1.61610704 -2.32164376]]]
Array * 3 + 2 :
[[[-2.73766306 6.80761741]
[-1.57909191 -1.64195796]]
[[ 0.51019498 1.30017345]
[ 3.8107863 -4.07438963]]]