目录:

  • 5.1 描述性统计分析
  • (1)基本统计学概念
  • (2)统计量
  • (3)离散程度
  • (4)点估计和区间估计
  • 5.2 假设检验
  • (1)假设检验概念
  • (2)假设检验基本步骤
  • (3)显著性水平与拒绝域
  • (4)单样本t检验
  • (5)双样本t检验


5.1 描述性统计分析

(1)基本统计学概念

  • 总体
  • 样本

(2)统计量

可以在一定程度上反应总体的特征,从样本数据中计算得到,常见统计量包括:

  • 均值
  • 标准差
  • 中位数
  • 分位数
  • 众数

(3)离散程度

统计量可以对数据有个大体的认识,仅反应了数据的某些趋势,常见的离散程度有:

  • 极差
  • 四分位差
  • 方差
  • 变异系数
import pandas as pd
import os

os.chdir(r'C:\Users\Administrator.DESKTOP-0L8IC5U\Desktop\数据分析\data')
insuance = pd.read_csv('train.csv', encoding='utf-8', dtype={'Gender': 'str'})

a = insuance['Age'].mean()
b = insuance['Age'].std()
c = insuance['Age'].median()
d = insuance['Age'].quantile([0, 0.05, 0.25, 0.5, 0.75])
print(a, '\n', b, '\n', c, '\n', d)
e = insuance['Gender'].value_counts()
f = insuance['Gender'].mode()
print(e, '\n', f, '\n')

g = insuance['Age'].max() - insuance['Age'].min()
h = insuance['Age'].quantile(0.75) - insuance['Age'].quantile(0.25)
cv = insuance['Age'].std() / insuance['Age'].mean()  # 变异系数
print(g, h, cv)

(4)点估计和区间估计

  • 点估计:用样本统计量去估计总体参数
    例如:假设有很多人,经过抽样计算出样本的身高平均值为168cm,那么就推断出这些人的平均身高为168cm
  • 区间估计:能够提供待估计的参数的置信区间和保证程度(置信度);区间估计用一个包括有真实值的区间范围来估计参数的取值范围,得到的结果为置信区间;区间估计的可信程度为置信度或者置信水平,一般用1-α表示
    例如:有95%的可能性可以确定总体增长率在区间4.5%-6%之间,其中4.5%-6%就是置信区间,95%是置信度

①置信度和置信区间

python 统计学包 python在统计学中的应用_python


python 统计学包 python在统计学中的应用_统计学_02


②中心极限定理

python 统计学包 python在统计学中的应用_python_03


python 统计学包 python在统计学中的应用_数据分析_04

import numpy as np
import pandas as pd
from scipy import stats
import os

os.chdir(r'C:\Users\Administrator.DESKTOP-0L8IC5U\Desktop\数据分析\data')
insuance = pd.read_csv('train.csv', encoding='utf-8', dtype={'Gender': 'str'})

# 点估计
insuance['Age'].mean()
# 区间估计
# 计算标准误差 s/根号n
se = stats.sem(insuance['Age'])
# 和se一样
n = len(insuance['Age'])
se_ = insuance['Age'].std() / np.sqrt(n)

interval = stats.norm.interval(0.95, insuance['Age'].mean(), se)
print(interval)
a = insuance['Age'].mean() - 1.96 * se
b = insuance['Age'].mean() + 1.96 * se
print(a, b)

5.2 假设检验

(1)假设检验概念

python 统计学包 python在统计学中的应用_数据分析_05

(2)假设检验基本步骤

  1. 提出原假设和备择假设
  2. 确定适当的检验统计量
  3. 规定显著性水平α
  4. 计算检验统计量的值
  5. 做出决策

(3)显著性水平与拒绝域

python 统计学包 python在统计学中的应用_python 统计学包_06

(4)单样本t检验

python 统计学包 python在统计学中的应用_统计学_07

(5)双样本t检验

python 统计学包 python在统计学中的应用_python 统计学包_08


步骤:

python 统计学包 python在统计学中的应用_假设检验_09

import pandas as pd
from scipy import stats
import os
import statsmodels.api as sm

os.chdir(r'C:\Users\Administrator.DESKTOP-0L8IC5U\Desktop\数据分析\data')
insuance = pd.read_csv('train.csv', encoding='utf-8', dtype={'Gender': 'str'})

# 单样本t检验
a = insuance['Age'].mean()
d1 = sm.stats.DescrStatsW(insuance['Age'])
b = d1.ttest_mean(38)

# 双样本t检验
insuance.groupby('Gender').mean()['Policy_Sales_Channel']
gender0 = insuance[insuance['Gender'] == 'Male']['Policy_Sales_Channel']
gender1 = insuance[insuance['Gender'] == 'Female']['Policy_Sales_Channel']
leveneTestRes = stats.levene(gender0, gender1)
stats.stats.ttest_ind(gender0, gender1, equal_var=True)