📅  最后修改于: 2023-12-03 15:34:51.920000             🧑  作者: Mango
scipy.stats.halfgennorm()
是 Scipy 中的一个概率分布函数,用于计算半正态分布的概率密度函数。
半正态分布是一个连续概率分布,其概率密度函数(PDF)在 x 轴的左侧为镜像对称,具有一个长尾,在 x 轴右侧有一个截尾。
scipy.stats.halfgennorm()
需要使用 Scipy 包来进行导入,具体使用方式如下:
from scipy.stats import halfgennorm
使用 halfgennorm()
函数生成半正态分布随机变量,则可调用其相应的方法进行计算。
# 生成一个随机变量
rv = halfgennorm()
# 计算概率密度函数在 x 处的值
rv.pdf(x)
# 计算累积分布函数在 x 处的值
rv.cdf(x)
# 计算逆累积分布函数在 p 处的值
rv.ppf(p)
# 计算随机变量的均值
rv.mean()
# 计算随机变量的方差
rv.var()
# 计算随机变量的标准差
rv.std()
halfgennorm()
函数的参数如下:
a
: 数字型。半正态分布的左侧截尾点,必须为非负数,默认值为 0。loc
: 数字型。期望值 loc 的位置参数,默认值为 0。scale
: 数字型。标准差 scale 的位置参数(对应方差为 scale ** 2),默认值为 1。以下是一个使用 halfgennorm()
函数生成半正态分布随机变量的例子:
from scipy.stats import halfgennorm
import matplotlib.pyplot as plt
import numpy as np
# 生成一个随机变量
rv = halfgennorm()
# 计算概率密度函数在 x 处的值
x = np.linspace(-1, 5, 100)
pdf = rv.pdf(x)
# 绘制概率密度函数
plt.plot(x, pdf)
plt.title('Half Generalized Normal Distribution PDF')
plt.xlabel('x')
plt.ylabel('PDF')
plt.show()
运行结果如下: