正态分布(Gaussian Distribution)是一种非常常见的概率分布,它具有单峰、钟型且对称的特点。在Python中,我们可以使用scipy.stats
模块中的norm
类来生成正态分布的概率密度函数(Probability Density Function,PDF)。
生成正态分布的概率密度函数
我们可以使用norm
类的pdf()
方法来生成正态分布的概率密度函数。pdf()
方法的参数是一个x值(浮点数或numpy数组),表示要计算概率密度函数的自变量。
以下是一个示例代码:
from scipy.stats import norm
import numpy as np
import matplotlib.pyplot as plt
# 定义正态分布的均值和标准差
mu, sigma = 0, 0.1
# 生成一个numpy数组,表示横坐标
x = np.linspace(-3, 3, 100)
# 生成正态分布的概率密度函数
pdf = norm.pdf(x, mu, sigma)
# 绘制概率密度函数图像
plt.plot(x, pdf, color='r')
# 显示图像
plt.show()
上面的代码中,我们使用了linspace()
函数生成了一个包含100个数的数组作为横坐标,这个数组表示x的取值范围为-3到3。然后,我们使用norm.pdf()
方法生成了对应的概率密度函数,最后使用Matplotlib库绘制了概率密度函数的图像。
计算正态分布的概率值
除了生成正态分布的概率密度函数以外,我们还可以使用norm
类的cdf()
方法计算正态分布的概率值。cdf()
方法的参数也是一个x值(浮点数或numpy数组),表示要计算的概率值的自变量。
以下是一个计算正态分布概率值的示例代码:
from scipy.stats import norm
# 定义正态分布的均值和标准差
mu, sigma = 0, 0.1
# 计算正态分布在x = 0处的概率值
p = norm.cdf(0, mu, sigma)
# 打印概率值
print(p)
上面的代码中,我们使用norm.cdf()
方法计算了正态分布在x=0处的概率值,然后使用print()
函数打印出了这个概率值。
通过上面的两个代码示例,我们可以清晰地了解到如何使用Python的scipy.stats
模块中的norm
类来生成正态分布的概率密度函数并计算正态分布的概率值。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 正态分布的概率密度函数 - Python技术站