📌  相关文章
📜  scipy stats.halfgennorm() | Python(1)

📅  最后修改于: 2023-12-03 15:34:51.920000             🧑  作者: Mango

scipy.stats.halfgennorm() | Python

介绍

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()

运行结果如下:

Half Generalized Normal Distribution PDF

参考资料
  1. Scipy halfgennorm documentation. https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.halfgennorm.html
  2. Half Normal Distribution. https://en.wikipedia.org/wiki/Half-normal_distribution