【统计学】推断统计分析——根据样本统计量推断总体参数

  本文总结了数据分析中用到的推断统计分析知识点,是自己学习参数估计和假设检验的学习笔记。

目录

  • 一、参数估计
    • 1. 点估计
    • 2. 区间估计
      • 2.1 中心极限定理
      • 2.2 程序模拟中心极限定理
      • 2.3 正态分布的特性
      • 2.4 程序检验正态分布的特性
      • 2.5 行业应用
  • 二、 假设检验
    • 1. 相关概念
    • 2.假设检验的步骤
    • 3. Z检验
      • 3.1 适用场景
      • 3.2 Z统计量计算方式
      • 3.3 Z检验Python实现
    • 4. t 检验
      • 4.1 适用场景
      • 4.2 t 统计量计算方式
      • 4.3 t 检验Python实现

  推断统计研究的是如何根据样本数据去推测总体特征的方法。进行推断的原因是在实际生产中,获取总体数据通常比较困难,甚至不可能完成,因此需要对总体进行抽样,通过样本统计量去估计总体参数。

一、参数估计

1. 点估计

  就是用样本的统计量去代替总体参数。
  优点: 可以给出具体的估计值;
  缺点: 估计结果容易受到随机抽样的影响,无法保证结论的准确性。

2. 区间估计

  根据样本统计量计算出一个可能的区间与概率。
  优点: 可给出合理的范围(置信区间)及信心指数(置信度);
  缺点: 不能给出具体的估计值。

2.1 中心极限定理

  如果总体(分布不重要)均值为 μ方差为 σ 2 σ^2 σ2,进行足够多次随机抽样,样本容量为n,当n增大时,样本均值近似服从正太分布X~N(μ, σ 2 σ^2 σ2/n)。
  结论:
  1、多次抽样,每次抽样会得到一个均值,均值会围绕在总体均值左右,呈正太分布。
  2、当样本容量n足够大(一般n>=30),样本均值服从正太分布。
  1)样本均值构成的正态分布,其均值等于总体均值μ;
  2)样本均值构成的正态分布,其标准差等于σ/ n \sqrt n n
  注意:
  1、样本均值的标准差,称为标准误差,简称标准误
  2、区分总体标准差σ,样本标准差(一次抽样获得的标准差),标准误差(样本均值构成的正太分布的标准差)。

2.2 程序模拟中心极限定理

import numpy as np
import pandas as pd
import seaborn as sns

#定义总体数据
#loc:均值;scale:标准差;size:数组大小,即数组中含有的元素个数
all_ = np.random.normal(loc=30,scale=80,size=10000)
#创建均值数组,用来存放每次抽样(每个样本)的均值
mean_arr = np.zeros(1000)
for i in range(len(mean_arr)):
    #随机抽样,size:样本容量;replace:是否为放回抽样,默认为True
    mean_arr[i] = np.random.choice(all_,size=64,replace=False).mean()
#样本均值构成正态分布,该正态分布的均值等于总体均值
#标准差等于总体标准差/根号n
print('样本均值构成的正太分布的均值:',mean_arr.mean())
print('样本均值构成的正太分布的标准差(标准误):',mean_arr.std())
print('偏度:',pd.Series(mean_arr).skew())
sns.distplot(mean_arr)

样本均值构成的正太分布的均值: 30.653383960104826
样本均值构成的正太分布的标准差(标准误): 9.918944517394578
偏度: 0.05852723907161612
【统计学】推断统计分析——根据样本统计量推断总体参数_第1张图片

2.3 正态分布的特性

  1、以均值为中心,在1倍标准差内( μ-σ,μ+σ),包含约68%的样本数据。
  2、以均值为中心,在2倍标准差内(μ-2σ,μ+2σ),包含约95%的样本数据。
  3、以均值为中心,在3倍标准差内(μ-3σ,μ+3σ),包含约99.7%的样本数据。
  其中,σ为样本均值的标准差,即标准误差。

2.4 程序检验正态分布的特性

#标准差
scale = 50
x = np.random.normal(0,scale,size=100000)
#定义标准差的倍数,倍数从1到3
for times in range(1,4):
    y = x[(x > -times * scale) & (x < times * scale)]
    print(times,'倍标准差:',f'{len(y) * 100 / len(x)}%')

1 倍标准差: 68.392%
2 倍标准差: 95.499%
3 倍标准差: 99.734%

2.5 行业应用

  参数估计在行业的应用,具体操作要根据实际场景来:
  1、工业生产量的判断。
  2、服务业投诉量是否改进判断。
  3、电商业用户访问量、用户流失等评估。
  4、金融、保险业风险评估。

二、 假设检验

  区间估计是通过正面方式,来计算总体参数的可能取值(区间);而假设检验是从反正角度来判断,是接受原假设还是拒绝原假设。

1. 相关概念

  1、小概率事件
  小概率事件在一次试验中不会发生,一旦发生则拒绝原假设。
  接受原假设,并不代表原假设一定是正确的,只是没有充分的证据去证明原假设是错误的,因此只能接受原假设。
  2、P-Value与显著性水平
  P-Value是支持原假设的概率,设定的阈值(α表示)为显著性水平,α通常选定为0.1、0.05、0.01,具体根据样本量选择,常选0.05。
  3、原假设与备择假设
  1)若是等值估计,等值选为原假设,不等选为备择假设;
  2)在单边检验中,原假设为维持现状,改变现状为备择假设。

2.假设检验的步骤

  1、设置原假设和备择假设;
  2、设置显著性水平α(通常选择0.05);
  3、根据问题选择检验方式;
  4、计算统计量,并通过统计量获取P值;
  5、根据P值与α值,决定接受原假设还是备择假设。

3. Z检验

  Z检验用来判断样本均值与总体均值是否有显著性差异。Z检验是通过正太分布理论来推断差异发生的概率,从而比较两个均值的差异是否显著。

3.1 适用场景

  1、总体呈正态分布;
  2、总体方差已知;
  3、样本容量较大(一般>=30)
1和3满足其一即可,因为在样本容量很大时,样本均值近似呈正态分布。

3.2 Z统计量计算方式

在这里插入图片描述
x一把:样本均值;
μ0:待检测的总体均值;
σ:总体的标准差
n:样本容量
  Z统计量含义: 样本均值与总体均值的距离是几倍标准误差,如果大于1.96倍或小于-1.96倍,表示样本均值落在了拒绝域。

3.3 Z检验Python实现

from scipy import stats
已知:样本 a = np.array([]),总体均值mean,总体标准差std
样本均值:sample_mean = a.mean()
标准误差:se = std / np.sqrt(len(a))
Z统计量:Z = (sample_mean = mean) / se
P值:P = 2 * stats.morm.sf(abs(Z))

4. t 检验

  t检验用来判断样本均值是否与总体均值具有显著性差异,t检验是基于t分布的。

4.1 适用场景

  1、总体呈正态分布;
  2、总体方差未知;
  3、样本数量较少(<30)
当样本容量>30,t分布接近正太分布

4.2 t 统计量计算方式

在这里插入图片描述
x一把:样本均值;
μ0:待检测的总体均值;
S:样本的标准差
n:样本容量

4.3 t 检验Python实现

已知:样本 a = np.array([]),总体均值mean
样本均值:sample_mean = a.mean()
样本标准差:sample_std = a.std()
t统计量:(sample_mean - mean) / (sample_std / np.sqrt(len(a)))
P值:2 * stats.t.sf(abs(t),df=len(a)-1),df为自由度,

简单理解,自由度就是变量能够自由取值的个数,t分布的自由度为n-1

你可能感兴趣的:(统计)