📜  Python – 统计中的 68-95-99.7 规则

📅  最后修改于: 2022-05-13 01:54:19.490000             🧑  作者: Mango

Python – 统计中的 68-95-99.7 规则

经验法则(也称为68-95-99.7 法则三西格玛法则)指出,对于任何正态分布,我们都有以下观察结果:

  • 68% 的观测值介于平均值的 1 个标准差之间: (\mu-\sigma)\ to\ (\mu+\sigma)
  • 95% 的观测值位于平均值周围的 2 个标准差之间: (\mu-2\sigma)\ to\ (\mu+2\sigma)
  • 99.7% 的观测值位于平均值附近的 3 个标准差之间: (\mu-3\sigma)\ to\ (\mu+3\sigma)

下面是一个标准正态分布图(均值 = 0和标准差 = 1 ),说明了经验法则。

我们可以使用 Python 的SciPy模块提供的函数来验证这一点。

我们可以使用scipy.stats.norm模块的cdf()函数来计算累积概率(分布曲线下的面积)。

下面是实现:

import matplotlib.pyplot as plt
import numpy as np
from scipy.stats import norm
 
# setting the values of
# mean and S.D.
mean = 0
SD = 1
 
# value of cdf between one, two
# and three S.D. around the mean
one_sd = norm.cdf(SD, mean, SD) - norm.cdf(-SD, mean, SD)
two_sd = norm.cdf(2 * SD, mean, SD) - norm.cdf(-2 * SD, mean, SD)
three_sd = norm.cdf(3 * SD, mean, SD) - norm.cdf(-3 * SD, mean, SD)
 
# printing the value of fractions
# within each band
print("Fraction of values within one SD =", one_sd)
print("Fraction of values within two SD =", two_sd)
print("Fraction of values within three SD =", three_sd)

输出 :

Fraction of values within one SD = 0.6826894921370859
Fraction of values within two SD = 0.9544997361036416
Fraction of values within three SD = 0.9973002039367398

因此,我们看到值的分数几乎等于0.650.950.997 。因此,经验法则得到验证。