无名阁,只为技术而生。流水不争先,争的是滔滔不绝。

详解np.random.normal函数/Python random.normal函数(获取正态分布的随机数)函数的使用方法(图文详解1)

Python Micheal 8个月前 (04-24) 145次浏览 已收录 扫描二维码
详解np.random.normal函数/Python random.normal函数(获取正态分布的随机数)函数的使用方法(图文详解1)

np.random.normal

详解np.random.normal函数/Python random.normal函数(获取正态分布的随机数)函数的使用方法(图文详解1)

详细介绍 Python 标准库 random 模块中的 normal() 函数,它用于生成服从正态分布的随机数。

  1. 函数作用:
    • normal() 函数用于生成服从正态分布的随机数。
    • 正态分布是一种常见的概率分布,广泛应用于统计学、机器学习等领域。
  2. 底层原理:
    • normal() 函数内部使用了 Box-Muller 算法来生成服从正态分布的随机数。
    • Box-Muller 算法是一种基于均匀分布生成正态分布随机数的经典方法。
    • 它利用了两个独立的服从标准均匀分布的随机变量,通过一系列数学变换可以得到服从标准正态分布的随机变量。
  3. 使用步骤:
    1. 导入 random 模块
    2. 使用 random.normal(mean, std, size) 函数生成正态分布的随机数
      • mean: 正态分布的均值
      • std: 正态分布的标准差
      • size: 生成随机数的数量,可以是标量或元组
    3. 根据需要对生成的随机数进行处理和分析
  4. 示例代码:
import random
import matplotlib.pyplot as plt
import numpy as np

# 生成单个服从正态分布的随机数
random_num = random.normal(0, 1)
print(f"Single random number: {random_num}")

# 生成 10 个服从正态分布的随机数
random_nums = random.normal(10, 2, 10)
print(f"Array of random numbers: {random_nums}")

# 生成 2x3 的正态分布随机数矩阵
random_matrix = random.normal(0, 1, (2, 3))
print(f"Random matrix:\n{random_matrix}")

# 绘制正态分布直方图
data = random.normal(0, 1, 1000)
plt.hist(data, bins=30, density=True)
plt.xlabel("Value")
plt.ylabel("Density")
plt.title("Normal Distribution")
plt.show()

# 计算随机数的均值和标准差
print(f"Mean: {np.mean(data)}")
print(f"Standard deviation: {np.std(data)}")

在上述示例中,我们首先生成了单个、多个和矩阵形式的正态分布随机数。

然后,我们使用 Matplotlib 库绘制了这些随机数的直方图,可以看到它们符合标准正态分布的特点。

最后,我们计算了这些随机数的均值和标准差,也与正态分布的特性相符。

通过这个例子,您可以看到 random.normal() 函数的使用方法。它能够帮助我们快速生成服从正态分布的随机数,在统计学、机器学习等领域都有广泛应用。

python pytorch 报错“name’np’isnotdefined”/name ‘np’ is not defined原因以及解决办法1(图文详解)

pytorch中permute()函数/permute函数用法实例详解(图文1)

喜欢 (0)
[]
分享 (0)
关于作者:
流水不争先,争的是滔滔不绝