如何在Python给定均值和标准差的正态分布中计算概率?
正态分布是实值随机变量的一种连续概率分布。它基于均值和标准差。概率分布函数或 PDF 计算分布中单个点的似然。计算正态分布 PDF 的一般公式为
这里,
- µ 是平均值
- σ 是分布的标准差
- x 是数字
要为其计算 PDF。我们可以使用 SciPy 模块计算正态分布中的概率。
安装:
pip install scipy
使用的函数:
我们将使用 scipy.stats.norm.pdf() 计算数字x的概率分布的方法。
Syntax: scipy.stats.norm.pdf(x, loc=None, scale=None)
Parameter:
- x : array-like object, for which probability is to be calculated.
- loc : optional (default=0), represents mean of the distribution.
- scale : optional (default=1), represents standard deviation of the distribution.
Returns: A probability density function calculated at x as a ndarray object.
在 scipy 中,用于计算均值和标准差的函数分别是 mean() 和 std() 。
- 对于均值
句法:
mean(data)
- 对于标准偏差
句法:
std(data)
方法
- 导入模块
- 创建必要的数据
- 提供具有所需值的函数
- 显示值
例子:
Python3
from scipy.stats import norm
import numpy as np
data_start = -5
data_end = 5
data_points = 11
data = np.linspace(data_start, data_end, data_points)
mean = np.mean(data)
std = np.std(data)
probability_pdf = norm.pdf(3, loc=mean, scale=std)
print(probability_pdf)
输出:
0.0804410163156249