正态分布(Normal Distribution)
正态分布,也被称为高斯分布,具有以下特点:
- 均值(Mean):数据的中心位置。
- 方差(Variance):数据的分散程度。
- 形状对称:正态分布是对称的,均值位于分布的中心。
使用numpy.random.normal()
函数来生成正态分布的随机数据。
import numpy as np
import matplotlib.pyplot as plt
# 定义均值和标准差
mean = 0
std_deviation = 1
# 生成正态分布的随机数据
data = np.random.normal(mean, std_deviation, 1000)
# 绘制直方图
plt.hist(data, bins=30, density=True, alpha=0.6, color='g')
# 绘制正态分布的概率密度函数
x = np.linspace(mean - 3 * std_deviation, mean + 3 * std_deviation, 100)
pdf = (1 / (std_deviation * np.sqrt(2 * np.pi))) * np.exp(-0.5 * ((x - mean) / std_deviation)**2)
plt.plot(x, pdf, 'r--', lw=2)
# 设置中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.title('正态分布随机数据可视化')
plt.xlabel('数值')
plt.ylabel('概率密度')
plt.show()
定义均值和标准差,使用numpy.random.normal()
生成1000个符合正态分布的随机数据。绘制直方图以及正态分布的概率密度函数。
均匀分布(Uniform Distribution)
均匀分布是一种简单的分布,它的所有数值具有相等的概率。在NumPy中,使用numpy.random.uniform()
函数来生成均匀分布的随机数据。
import numpy as np
import matplotlib.pyplot as plt
# 定义最小值和最大值
low = 0
high = 1
# 生成均匀分布的随机数据
data = np.random.uniform(low, high, 1000)
# 绘制直方图
plt.hist(data, bins=30, density=True, alpha=0.6, color='b')
# 绘制概率密度函数
x = np.linspace(low, high, 10000)
y = np.ones_like(x) / float(high - low)
plt.plot(x, y, color='r', alpha=0.8, linewidth=0.5)
# 设置中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.title('均匀分布随机数据可视化')
plt.xlabel('数值')
plt.ylabel('概率密度')
plt.show()
定义最小值和最大值,使用numpy.random.uniform()
生成1000个符合均匀分布的随机数据。