总体方差
公式:
( n − 1 ) s 2 χ a / 2 2 ≤ σ 2 ≤ ( n − 1 ) s 2 χ 1 − a / 2 2 \frac{(n-1)s^2}{\chi^2_{a/2}}\leq \sigma^2 \leq \frac{(n-1)s^2}{\chi^2_{1-a/2}} χa/22(n−1)s2≤σ2≤χ1−a/22(n−1)s2
例:
一家食品生产企业以生产袋装食品为主,每天的唱片大约为8000袋。按规定每袋的重量应为100克。为对产品重量进行监测,企业质检部门经常要进行抽检,以分析每袋重量是否符合要求,现从某天生产的一批食品中随机抽取25袋,测得每袋重量如下:
import pandas as pd
import numpy as np
import scipy as sp
from scipy import stats
lst = [112.5,102.6,100,116.6,136.8,101,107.5,123.5,95.4,102.8,103,95,102,97.8,101.5,102,108.8,101.6,108.6,98.4,100.5,115.6,102.2,105,93.3]
data = pd.Series(lst)
以95%的置信水平建立食品总体重量标准差的置信区间
# 已知 样本量 n = 25, 置信水平 1-a=95%
n = 25
a = 0.05
sigma = data.std()
sigma_2 = data.var()
计算 χ 1 − a / 2 2 \chi^2_{1-a/2} χ1−a/22 和 χ a / 2 2 \chi^2_{a/2} χa/22
X2_1_a2 = stats.chi2.ppf(a/2,n-1)
X2_a2 = stats.chi2.isf(a/2,n-1)
X2_a2,X2_1_a2
(39.3640770266039, 12.401150217444435)
计算公式:
left = (n-1)*sigma_2/X2_a2
right = (n-1)*sigma_2/X2_1_a2
left,right
(56.82897120865119, 180.38810600433115)
# 方差比为
left = np.sqrt(left)
right = np.sqrt(right)
print('该批食品总重量标准差为:{:.3f}'.format(sigma))
print('该批食品总重量标准差95%的置信区间为({:.3f},{:.3f})'.format(left,right))
该批食品总重量标准差为:9.654
该批食品总重量标准差95%的置信区间为(7.538,13.431)