【数据分析】推断统计学及Python实现

各位大佬好 ,这里是阿川的博客,祝您变得更强

个人主页:在线OJ的阿川

大佬的支持和鼓励,将是我成长路上最大的动力

阿川水平有限,如有错误,欢迎大佬指正

Python 初阶
Python--语言基础与由来介绍
Python--注意事项
Python--语句与众所周知
数据清洗前 基本技能
数据分析---技术栈和开发环境搭建
数据分析---Numpy和Pandas库基本用法及实例
推断统计学前 必看
数据分析---三前奏:获取/ 读取/ 评估数据
数据分析---数据清洗操作及众所周知
数据分析---数据整理操作及众所周知
数据分析---统计学基础及Python具体实现
数据分析---数据可视化Python实现超详解

目录

  • 推断统计学简介
    • T检验/Z检验概述
    • 检验具体实现

统计学

推断统计学简介

推断统计学

  • 涉及假设检验
    • 通过样本 做出关于总体 的推断或预测
      • 样本 :也称 之为对象
        • 统计量 :描述 样本特征的数值
      • 总体 :所有对象 的集合
        • 参数 :特征 的数值

T检验/Z检验概述

推断统计学中会涉及T检验和Z检验 (重点 )
独立双样本T检验或Z检验

  • 独立 :不同的总体 ,彼此之间无关联
  • 双样本 :比较 两个不同样本
  • T检验/Z检验 :用于确定 样本的平均值之间 是否 存在统计显著性 (排除随机可能性 )
    • Z检验 相对于T检验而言 ,可以提供更高准确性和敏感性

前提条件

  • 随机抽样
  • 总体大致呈正态分布
    • 中间值多
    • 两边极端值少
  • ( Z检验 )总体方差要已知 或样本量大于30

检验具体实现

步骤一 建立假设
原假设H0 (一般为不支持 的可能)

参数A不高于 参数B
备择假设H1 (一般为支持 的可能)

参数A高于 参数B

步骤二 选择单尾或双尾检验
双尾 :推断 总体是否有差异 ,正差异和负差异都可以 ,不在乎 谁大谁小。

  • 原假设 :两个参数存在差异
  • 备择假设 :两个参数不存在差异

单尾 :检验差异 为正差异和负差异 ,在乎谁大谁小。

  • 原假设 :参数A没有大于参数B
  • 备择假设 :参数A大于 参数B
    或者
  • 原假设 :参数A没有小于参数B
  • 备择假设 :参数A小于参数B

步骤三 确定显著水平
允许检验犯错误的概率

  • 允许检验犯错误的概率高 ,表示检验宽松
  • 允许检验犯错误的概率低 ,表示检验严格

显著水平数值

  • 双尾 应小于0.05

    • 表示如果检验结果是 拒绝原假设 ,原假设实际为 真概率为5%
      • 即 如果检验结果是 拒绝原假设 ,结论95%概率是对的。
  • 单尾 应小于0.025

    • 表示如果检验结果是 拒绝原假设 ,原假设实际为真概率为2.5%
      • 即 如果检验结果是 拒绝原假设 ,结论97.5%概率是对的

不同 的项目 ,显著水平设定 会有所不同 (例如医药临床方面 ,显著水平设为一般为0.01)

显著性水平 一般用alpha字母表示 ,用if 跟p值 进行比较来进行筛选

步骤四 计算T值/Z值
表示 两个样本之间均值的大小
T = x 1 − x 2 s 1 2 n 1 + s 2 2 n 2 T={ {x~1~ - x~2~ } \over \sqrt{ {s~1~ ^2\over n ~1~ }+{s~2~ ^2\over n ~2~ } }} T=n 1 s 1 2+n 2 s 2 2 x 1 −x 2

x1和x2 是两个样本 的均值
s12和 s22 是两个样本 的方差
n1和n2 是两个样本 的大小

先安装Scipy库 (该库基于Numpy)

  • pip install scipy

导入
from scipy.stats import ttest_ind

  • 专门 用来做独立双样本T检验函数

    • ttest_ind (样本对象1 ,样本对象2)

ttest_ind 会返回t值和p值 (默认 p值为双尾,若是单尾检验 ,要在其返回值上除以二 才是双尾的值 )

样本对象P表示:

  • 在总体之间 不存在显著差异 ,那样本之间存在 当前这种显著或更极端的差异 有多大概率
    • P值小 假设总体没有差异 的话,样本有当前的差异 是小概率 ,即为拒绝原假设
    • P值大 假设总体有没有差异 的话,样本有当前的差异 是大概率 ,即为接受原假设

Z = x 1 − x 2 σ 1 2 n 1 + σ 2 2 n 2 Z={ {x~1~ - x~2~ } \over \sqrt{ {\sigma~1~ ^2\over n ~1~ }+{\sigma~2~ ^2\over n ~2~ } }} Z=n 1 σ 1 2+n 2 σ 2 2 x 1 −x 2
x1和x2 是两个样本 的均值
σ \sigma σ1 2 和 σ \sigma σ2 2 是两个总体的 已知方差
n1和n2 是两个样本 的大小

先安装 pip install statsmodels


导入
statsmodels.stats.weightstats import ztest

  • ztest(样本对象T,样本对象P,alternative=" ")
    • alternative 该参数为可选择的
      • =two-sided 表示两尾的
      • =larger 表示单尾的
      • =smaller 表示想推断第一个总体均值是否显著小于第二个总体均值

实际上 :只需 看P值和显著水平 就可以查看接受或拒绝原假设了

步骤五 计算自由度 ( Z检验不需要)

  • 自由度 =样本1 +样本2 - 2

步骤六 查看T值/Z值临界值表

T值临界值表

Z值临界值表

步骤七 比较临界值和T值

  • T值 ≥临界值 表示拒绝原假设
  • T值 <临界值 表示接受原假设

好的,到此为止啦,祝您变得更强


想说的话

实不相瞒,写的每篇博客都要写六个小时以上(加上自己学习和纸质笔记,共八九小时 吧),很累 ,希望大佬支持

道阻且长 行则将至

个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力

相关推荐
一隅论数智4 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
默_笙4 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
XiHongShi20164 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
qq_426003964 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技4 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
爱吃苹果的日记本4 天前
离散数学第六课
学习·离散数学
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
Asa121384 天前
R语言实现多组学因子分析(MOFA)
数据分析