欢迎访问宙启技术站
智能推送

利用numpy.random.randn()在Python中生成服从高斯分布的随机矩阵

发布时间:2023-12-24 09:41:24

numpy.random.randn()是numpy模块中的一个函数,用于生成服从标准正态分布(平均值为0,标准差为1的正态分布)的随机数或随机矩阵。

要使用numpy.random.randn()函数,首先需要导入numpy模块:

import numpy as np

然后调用np.random.randn()函数来生成服从高斯分布的随机矩阵。

下面是一个例子,展示如何生成一个服从高斯分布的随机矩阵:

import numpy as np

# 生成一个5行3列的服从高斯分布的随机矩阵
random_matrix = np.random.randn(5, 3)
print(random_matrix)

运行上述代码,将输出一个5行3列的随机矩阵,其中的每个元素都是服从高斯分布的随机数。

输出示例:

[[-0.52764857  0.71768799  1.1234584 ]
 [-1.34301365 -0.87429378 -0.05047504]
 [-1.39410421 -0.46821561  2.01184123]
 [ 0.21737115  0.11148845 -0.77498343]
 [-0.04461163 -1.52835578  0.06681122]]

生成的随机数服从高斯分布,其平均值接近于0,标准差接近于1。

numpy.random.randn()函数也可以传入单个参数来生成一维数组,例如:

import numpy as np

# 生成长度为10的服从高斯分布的一维数组
random_array = np.random.randn(10)
print(random_array)

输出示例:

[-0.78621735  0.69052984  0.34864527  2.44985965 -0.63166335 -1.5317723
 -0.97965074  1.52151606 -0.41707033 -2.76507149]

上述代码将生成一个长度为10的一维数组,其中每个元素都是服从高斯分布的随机数。

除了numpy.random.randn()函数,numpy模块中还有其他一些函数可以用来生成服从不同分布(如均匀分布、正态分布等)的随机数或随机矩阵,可以根据需要选择合适的函数来生成所需的随机数。