在Python中,你可以使用`scipy.stats`库来计算概率分布。下面是一些基本的概率计算示例:
1. 二项分布(Binomial Distribution)
二项分布用于描述在n次独立的伯努利试验中,事件A发生k次的概率。
import numpy as np
from scipy.stats import binom
import matplotlib.pyplot as plt
定义二项分布参数
p = 0.4 事件A发生的概率
n = 5 试验次数
k = np.arange(n + 1) 可能的结果
计算二项分布的概率质量函数(PMF)
probs = binom.pmf(k, n, p)
绘制二项分布
plt.plot(k, probs)
plt.show()
2. 正态分布(Normal Distribution)
正态分布用于描述连续随机变量的分布情况。
from scipy.stats import norm
定义正态分布参数
mu = 0 均值
sigma = 1 标准差
x = 1.96 想要计算的分位数
使用CDF计算累积分布函数值
cdf_value = norm.cdf(x, mu, sigma)
print("累积分布函数值为:", cdf_value)
3. 几何分布(Geometric Distribution)
几何分布用于描述在n次独立的伯努利试验中,首次成功发生在第k次试验的概率。
from scipy.stats import geom
定义几何分布参数
p = 0.4 事件A发生的概率
计算几何分布的概率质量函数(PMF)
probs = geom.pmf(k, p)
绘制几何分布
plt.plot(k, probs)
plt.show()
4. 使用`scipy.stats`计算特定概率值
你可以使用`scipy.stats`中的函数直接计算特定概率值,例如泊松分布的参数λ。
from scipy.stats import poisson
定义泊松分布参数
lam = 5 泊松分布的参数λ
计算泊松分布的概率质量函数(PMF)
probs = poisson.pmf(k, lam)
绘制泊松分布
plt.plot(k, probs)
plt.show()
5. 使用`scipy.stats`计算累积概率
你可以使用`scipy.stats`中的函数计算累积概率,例如正态分布的CDF。
from scipy.stats import norm
定义正态分布参数
mu = 0 均值
sigma = 1 标准差
x = 1.96 想要计算的分位数
使用CDF计算累积分布函数值
cdf_value = norm.cdf(x, mu, sigma)
print("累积分布函数值为:", cdf_value)
以上示例展示了如何使用`scipy.stats`库计算不同类型的概率分布及其概率值。你可以根据需要修改参数来计算不同的概率分布。