如何在 python 中计算和绘制正态 cdf
累积分布函数 ( CDF ) 告诉我们随机变量的值小于或等于某个值的概率。
本教程介绍如何在 Python 中计算和绘制正态 CDF 值。
示例 1:用 Python 计算正态 CDF 概率
在 Python 中计算正态 CDF 概率的最简单方法是使用SciPy库中的norm.cdf()函数。
以下代码显示如何计算随机变量在标准正态分布中取小于 1.96 的值的概率:
from scipy. stats import norm #calculate probability that random value is less than 1.96 in normal CDF norm. cdf ( 1.96 ) 0.9750021048517795
在标准正态分布中,随机变量取小于 1.96 的值的概率约为0.975 。
我们还可以通过简单地用 1 减去该值来找到随机变量取大于 1.96 的值的概率:
from scipy. stats import norm #calculate probability that random value is greater than 1.96 in normal CDF 1 - norm. cdf ( 1.96 ) 0.024997895148220484
在标准正态分布中,随机变量取大于 1.96 的值的概率约为0.025 。
示例 2:绘制正态 CDF
以下代码展示了如何在 Python 中绘制正态 CDF:
import matplotlib. pyplot as plt import numpy as np import scipy. stats as ss #define x and y values to use for CDF x = np. linspace (-4, 4, 1000) y = ss. norm . cdf (x) #normal plot CDF plt. plot (x, y)
x 轴显示遵循标准正态分布的随机变量的值,y 轴显示随机变量取值小于 x 轴显示的值的概率。
例如,如果我们查看 x = 1.96,我们将看到 x 小于 1.96 的累积概率约为0.975 。
您还可以随意更改正常 CDF 图的轴的颜色和标签:
import matplotlib. pyplot as plt import numpy as np import scipy. stats as ss #define x and y values to use for CDF x = np. linspace (-4, 4, 1000) y = ss. norm . cdf (x) #normal plot CDF plt. plot (x,y,color=' red ') plt. title (' Normal CDF ') plt. xlabel (' x ') plt. ylabel (' CDF ')
其他资源
以下教程解释了如何在 Python 中执行其他常见操作: