Python numpy random randn

Python numpy random randn 函数从标准正态分布中返回随机数数组,其语法为

numpy.random.randn(d0, d1, d2, d3,……, dn)

d0, d1, d2, d3,..., dn 参数值是可选的,它们指定数组维度。如果提供正参数,random randn 函数将生成给定形状的随机浮点值。

Python numpy random randn 示例

如果不提供任何参数值,则 random randn 返回一个浮点值。否则,此函数返回一个 ndarray。在此示例中,我们不带任何参数使用此函数。

import numpy as np

randnArr1 = np.random.randn()
print(randnArr1)
print()

randnArr2 = np.random.randn()
print(randnArr2)
-0.1190630720571025

0.13108588886851796

random randn 一维数组

在这里,带有参数 (5) 的函数会创建一个一维数组并用任意数字填充它们。

import numpy as np

randnOneDArr1 = np.random.randn(5)
print(randnOneDArr1)
print()

randnOneDArr2 = np.random.randn(8)
print(randnOneDArr2)
[-0.15532315  1.48066508  0.02134949  1.42327666  0.35529594]

[-1.08493387 -0.33618251  1.6513366  -0.76712552  0.20014333 -0.09537157
  0.12968054 -1.06886917]

二维 randn 随机数组

import numpy as np

randnTwoDArr1 = np.random.randn(2, 3)
print(randnTwoDArr1)
print()

randnTwoDArr2 = np.random.randn(4, 5)
print(randnTwoDArr2)
[[ 1.16499735 -0.29089086 -0.61637367]
 [-1.33852303 -1.55360179 -0.57502968]]

[[-1.19540849 -1.26507447  0.42922849 -0.99128182 -0.56647817]
 [-0.18800185 -1.3729178  -0.06733882  0.21002692  0.97676689]
 [-0.07614783  1.66854604  1.43727936  1.10420558 -0.47618305]
 [-0.84303037  0.80345969  0.43075844 -0.52133616  0.39946079]]

三维数组

import numpy as np

randnThreeDArr1 = np.random.randn(2, 2, 3)
print(randnThreeDArr1)
print()

randnThreeDArr2 = np.random.randn(2, 4, 5)
print(randnThreeDArr2)
random randn Example

多维 random randn 数组

import numpy as np

randnThreeDArr1 = np.random.randn(2, 2, 2, 3)
print(randnThreeDArr1)
print()

randnThreeDArr2 = np.random.randn(2, 2, 2, 2, 4)
print(randnThreeDArr2)
[[[[-0.49003723  0.10538309  1.00878589]
   [-1.04090049 -0.12316203 -2.71174546]]

  [[ 0.64973719  0.7905445  -2.21885022]
   [-0.42551294  0.07225683  0.06877539]]]


 [[[-1.31479185 -0.02534445  0.40838083]
   [-1.41941676  1.4174154   1.00272178]]

  [[ 1.67533883 -0.73425059  0.4134018 ]
   [ 1.0205856   0.81890094  0.70149338]]]]

[[[[[-0.21434075 -0.34164547 -0.00858992 -0.49217858]
    [ 1.0692015  -0.45626313 -0.74388692  0.04669171]]

   [[ 0.5586004   0.4855915  -1.01220602  1.19120821]
    [-0.16605316  1.14090238  0.03363894 -1.11966274]]]


  [[[ 1.74147131 -0.59825137 -1.10534603 -0.62323573]
    [ 0.38333497  0.24989126 -0.43793776  0.38728504]]

   [[-0.9094845   0.50144625 -0.03183788  1.51701865]
    [ 0.72316509 -0.3764924  -0.79577108 -0.1124155 ]]]]



 [[[[-0.06678042 -0.71614296 -0.56540373 -0.23460517]
    [-1.43545586  0.19400586 -0.46936663  0.22060458]]

   [[-1.63621087 -1.04987423 -0.92225825 -0.10737135]
    [-1.31863337  1.39154389 -0.56283176  1.20248983]]]


  [[[ 1.88742062  0.69761658  0.01897559  0.46728448]
    [ 0.75501117  1.08072768  0.66426271  0.13344399]]

   [[-1.36858917  1.48854343  0.4055712  -0.52813708]
    [-0.45967513 -0.64985973 -0.42966048 -0.56245859]]]]]

除此之外,我们还可以在其上执行计算或 Python 算术运算。

import numpy as np

randnThreeDArr1 = np.random.randn(2, 3)
print(randnThreeDArr1)

print("\nrandn random array multiplies with 12 = \n", randnThreeDArr1 * 12)

print("\n2D random randn array multiplies with 15 and added 4 to it")
print(np.random.randn(2, 3) * 15 + 4)

print("\n3D random randn array multiplies with 9 and added 11 to it")
print(np.random.randn(2, 2, 3) * 9 + 11)
[[-0.37226814  1.45008532  1.23092693]
 [ 0.56230156 -0.47328258 -0.36321147]]

randn random array multiplies with 12 = 
 [[-4.46721768 17.4010238  14.77112321]
 [ 6.74761877 -5.67939092 -4.35853763]]

2D random randn array multiplies with 15 and added 4 to it
[[  3.69442594  -2.0569281   10.45519936]
 [ 22.77077114 -12.65088561 -14.92586724]]

3D random randn array multiplies with 9 and added 11 to it
[[[-1.22722572  8.52319722  1.47347351]
  [ 0.40692321  7.12153801  3.69733377]]

 [[21.83366764 11.02923414  7.50767092]
  [ 6.0678307  -2.95467098 23.18938078]]]