image.png
什么是推断统计
推断统计是研究如何根据样本数据去推断总体数量特征的方法。它是在对样本数据进行描述的基础上,对统计总体的未知数量特征做出以概率形式表述的推断。
为什么要做推断统计
因为在实际研究中,获取总体数据通常比较困难,甚至不可能完成。因此,就需要对总体进行抽样,通过样本的统计量去估计总体参数。也就是说,总体的参数往往是未知的,我们为了获取总体的参数,需要通过样本的统计量来估计总体参数。
推断统计怎么做
1.点估计
点估计,就是用样本的统计量去代替总体参数。比如要求全校的平均身高,就可以用样本的均值来估计总体的均值。
点估计实现简单,但容易受到随机抽样的影响
优点:能够给出具体的估计值
缺点:缺乏准确性
2.区间估计
区间估计就是根据样本的统计量,计算出一个可能的区间与概率,表示总体的参数会有多少概率位于该区间种。区间估计指定的区间,成为置信区间,区间估计指定的概率,成为置信度。
优点:能给出合理的范围以及信心指数
缺点:不能给出具体的估计值
中心极限定理
要确定置信区间和置信度,我们要知道总体和样本之间的关系,在数学上,中心极限定理给出了很好的解释。
如果总体(分布不重要)均值为
, 方差为
,我们进行随机抽样,样本容量为n,当n增大时,则样本均值逐渐服从正态分布:
关于中心极限定理:
从总体中多次抽样,则每次抽样会得到一个均值,这些均值服从正态分布。
- 如果总体服从正太分布,则样本容量n只需要大于0即可
- 如果总体不服从正态分布,则样本容量n通常需要满足n>=30
python程序模拟中心极限定理:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
from sklearn.datasets import load_iris
# 设置风格
sns.set(style='white', font_scale=1.2)
%matplotlib inline
plt.rcParams["font.sans-serif"] = "SimHei"
plt.rcParams['axes.titlesize'] = 20
plt.rcParams['axes.unicode_minus']=False
warnings.filterwarnings("ignore")
def plot_dist(all_):
"""从总体中进行抽样,并绘制每次抽样的分布。
Parameters
----------
all_:array-like
用来模拟总体的数据。
"""
# 计算总体的均值与标准差
print(f"总体均值:{all_.mean():.2f},总体标准差:{all_.std():.2f}")
# 定义样本容量列表,后面抽样得到的样本,会以该列表中定义的数值作为样本容量
sample_num = [1, 5, 10, 30]
# 计算在各个样本容量下的标准误差
print(all_.std()/np.sqrt(sample_num))
# 定义子图数量,2*2
fig, ax = plt.subplots(2,2)
# 设置画布大小,15*10,单位:英寸
fig.set_size_inches(15,10)
# 将ax转化为一维数组,便于后面在循环中使用
ax = ax.ravel()
for index, num in enumerate(sample_num):
# 创建均值数组,用来存储每次抽样(每个样本)的均值
mean_arr = np.zeros(1000)
# 循环1000次,获取1000个样本
for i in range(len(mean_arr)):
# 进行随机抽样,计算每个样本的均值,并放入数组中
# size:样本容量
mean_arr[i] = np.random.choice(all_,size=num).mean()
ax[index].set_title(f"样本容量:{num},均值:{mean_arr.mean():.2f},标准差:{mean_arr.std():.2f}")
sns.distplot(mean_arr,ax=ax[index])
# 模拟服从对数正态分布的总体
all_ = np.random.lognormal(size=10000)
plot_dist(all_)
image.png
# 模拟服从正太分布的总体
# size:数组的形状
# loc:均值
# scale:标准差
all_ = np.random.normal(size=10000,loc=0,scale=1)
plot_dist(all_)
image.png
正态分布的特性
以均值为中心,1倍标准差内,包含约68%的样本数据
以均值为中心,2倍标准差内,包含约95%的样本数据
以均值为中心,3倍标准差内,包含约99.7%的样本数据
经常使用的是95%置信区间,1.96倍标准差











网友评论