假设检验

假设检验是推论统计学(inferential statistics)的一个分支,也就是对一个较小的、有代表性的数据组(例如样本集合)进行分析与评估,并依此推断出一个大型的数据组(例如人口)的一般性结论。一个典型的例子如:估算一个国家中居民的平均身高(在这个场景下,也就是人口)。在估算时,可能会在1000个人(也就是样本)中进行分析以及评估,然后对整个国家里的居民平均身高进行估算。

假设检验尝试解决的问题:一个特定的假设值是否与直接分析(或评估)获取的值处于一致。

一般来说,假设检验的步骤如下:

1. 定义null 与 alternative hypotheses

在第一步中,会定义一个null hypothesis(记为H0)。这里我们定义H0为:某国的人口平均身高为175cm。这个假设是需要之后通过统计测试进行测试的假设。Alternative hypothesis(记为Ha)由null hypothesis 的补全完整性声明组成,在这个例子中,alternative hypothesis Ha 为:平均身高不为175cm。null hypothesis 和 alternative hypothesis 永远都是相互补全的。

2. 确立合适的检验统计量

检验统计量是基于样本计算出的一个量。它的值是决定接收或是拒绝null hypothesis 的基准。在大部分情况下,它可以由下面的公式计算得出:

这里sample statistic(样本统计值)是在样本上计算得出的统计值(在这个例子中,就是1000个样本居民的平均身高);

value under null hypothesis(null hypothesis 下的值),假设 null hypothesis成立时的值(在这个例子中,也就是175cm);

standard error of sample statistic(样本统计值的标准差),是样本的标准误差。

一旦test statistic 确定并计算得出后,我们需要决定它遵循什么样的概率分布。在大部分情况下,会使用如下概率分布:

  1. t-分布(Student’s t-distribution),对应t-检验(t-test)
  2. 标准正态分布(Standard normal)或z-分布(z-distribution),对应z-检验(z-test)
  3. 卡方分布(Chi-squared distribution),对应卡方检验(chi-squared test)
  4. F-分布(F-distribution),对应F-检验(F-tests)

在选择使用哪个分布时,取决于样本的大小以及检验的类别。根据经验,如果样本大小超过30,我们预期“中心极限定理的假设成立“,所以检验统计(test statistic)遵循一个标准分布(所以使用z-检验)。对于更保守的办法,或是对于小于30个样本,应使用t-检验(检验统计遵循Student’s t-分布)

3. 指定显著性水平(significance level)

在检验统计量(test statistic)计算得出后,我们需要决定是否能拒绝null hypothesis。在执行时,我们首先指定一个显著性水平(significance level),也就是拒绝一个正确的null hypothesis 的概率。一般的方法是指定5% 的显著性水平。这个意思是:null hypothesis 为正确的,但是我们有5% 的概率拒绝它(对于更保险的方法,我们可以使用1% 或甚至0.5%)。一旦一个显著性水平被指定后,我们需要计算拒绝点(rejection points),他们是用于与检验统计量进行对比的值。如果检验统计量(test statistic)大于指定的拒绝点,则我们可以拒绝 null hypothesis 并假设 alternative hypothesis 为真。这里我们就可以将两者区分开来

4. 双侧检验(two-sided tests)

这是在null hypothesis 假设value“等同于“一个预定义的值的时候做的检验。举个例子,全国人民的平均身高等同于175cm。在这个例子中,如果我们指定一个显著性水平为5%,则我们会有两个临界值(一正一负),它们两条尾巴的总体概率相加为5%。在计算临界值时,我们需要找到一个正态分布的两个百分比值,这两个百分比值之间的概率等同于1减去显著性水平。举个例子,如果我们假定样本的身高均值服从一个正态分布,指定检验的显著性水平为5%,则我们需要找到两个百分比数,落入它们区间之外的值的概率等于0.05。由于它的概率由两条尾巴进行分割,所以这2个百分数就是2.5 和 97.5。对于一个正态分布来说,对应的值就是-1.96 和 1.96,这就是两个临界值。所以,如果以下为真,则我们不会拒绝null hypothesis:

如果上面的公式不为真,那也就是说,检验统计值(test statistic)大于1.96或是小于-1.96,则我们拒绝null hypothesis

5. 单侧检验(One-sided tests)

这是在null hypothesis 假定value “大于“或是”小于“一个预定义值的时候做的检验。例如,全国人民的平均身高高于175cm。在这个例子中,如果我们指定一个显著性水平为5%,则我们将仅有一个临界值,它的尾巴的概率等同于5%。在找这个临界值时,我们需要找到一个正态分布的一个百分数,对应的是尾部概率等于0.05 的值。对于”大于“类型的检验,临界值对应于5-分位数,或是-1.645(若是检验遵从一个正态分布);对于”小于“类型的检验,临界值对应为95-分位数,或是1.645。所以,若是以下为真,则我们会拒绝null hypothesis(”大于“检验的情况):

反之,对于“小于“检验的类型,若是以下公式为真,则我们拒绝null hypothesis:

需要注意的是,通常情况下,相对于计算一个特定显著性水平的临界值,我们会使用检验的 p 值(p-value)。p值是在null hypothesis可以被拒绝时的最小显著性水平。p 值也提供了,在null hypothesis 为真的情况下,获取观测到的样本统计量的概率。如果获取的 p 值小于一个指定的显著性水平,则我们可以拒绝null hypothesis。所以p值的方法,在实际使用中,是另一个(大多数情况下也是更方便的一个)执行假设检验的方法。

下一章我们会使用 Python 来演示一个实际执行假设检验的例子。

Bike Sharing Analysis(二)- 假设检验方法的更多相关文章

  1. Kaggle Bike Sharing Demand Prediction – How I got in top 5 percentile of participants?

    Kaggle Bike Sharing Demand Prediction – How I got in top 5 percentile of participants? Introduction ...

  2. PGM学习之二 PGM模型的分类与简介

    废话:和上一次的文章确实隔了太久,希望趁暑期打酱油的时间,将之前学习的东西深入理解一下,同时尝试用Python写相关的机器学习代码. 一 PGM模型的分类 通过上一篇文章的介绍,相信大家对PGM的定义 ...

  3. linux杂记(十二?) 关于账号和密码的二三事

    关于密码的二三事 关于账号和密码的二三事 久了不更linux的相关知识,实在是懒得想内容点(纯粹是懒).那么今天就来谈谈关于linux密码和账号的重要概念. 假如你的主机遭到入侵,那么对方的第一个侵入 ...

  4. 《MySQL面试小抄》索引考点二面总结

    <MySQL面试小抄>索引考点二面总结 我是肥哥,一名不专业的面试官! 我是囧囧,一名积极找工作的小菜鸟! 囧囧表示:小白面试最怕的就是面试官问的知识点太笼统,自己无法快速定位到关键问题点 ...

  5. T检验与F检验的区别_f检验和t检验的关系

    1,T检验和F检验的由来 一般而言,为了确定从样本(sample)统计结果推论至总体时所犯错的概率,我们会利用统计学家所开发的一些统计方法,进行统计检定. 通过把所得到的统计检定值,与统计学家建立了一 ...

  6. 通俗理解T检验和F检验

    来源: http://blog.sina.com.cn/s/blog_4ee13c2c01016div.html   1,T检验和F检验的由来 一般而言,为了确定从样本(sample)统计结果推论至总 ...

  7. 通俗理解T检验与F检验的区别【转】

    转自:http://blog.sina.com.cn/s/blog_4ee13c2c01016div.html1,T检验和F检验的由来一般而言,为了确定从样本(sample)统计结果推论至总体时所犯错 ...

  8. 统计学常用概念:T检验、F检验、卡方检验、P值、自由度

    1,T检验和F检验的由来 一般而言,为了确定从样本(sample)统计结果推论至总体时所犯错的概率,我们会利用统计学家所开发的一些统计方法,进行统计检定. 通过把所得到的统计检定值,与统计学家建立了一 ...

  9. SparkMLlib学习之线性回归

    SparkMLlib学习之线性回归 (一)回归的概念 1,回归与分类的区别 分类模型处理表示类别的离散变量,而回归模型则处理可以取任意实数的目标变量.但是二者基本的原则类似,都是通过确定一个模型,将输 ...

  10. python数据统计分析

    1. 常用函数库   scipy包中的stats模块和statsmodels包是python常用的数据分析工具,scipy.stats以前有一个models子模块,后来被移除了.这个模块被重写并成为了 ...

随机推荐

  1. vue-cli快速搭建项目的几个文件(三)

    ==========有加载动画的app.vue=========== <template>   <div id="app">     <keep-al ...

  2. Oracle、达梦:获取两个表中差异的数据:minus(减法)

    Oracle.达梦:获取两个表中差异的数据:minus(减法) mysql没有.需要用别的方式替换 表结构必须一致,数据也必须一致才能减去 真实意思:T_1中的数据减去T_2中的数据.返回还多余的数据 ...

  3. Java 集合类 List 的那些坑

    现在的一些高级编程语言都会提供各种开箱即用的数据结构的实现,像 Java 编程语言的集合框架中就提供了各种实现,集合类包含 Map 和 Collection 两个大类,其中 Collection 下面 ...

  4. 一则current日志损坏的数据库恢复实例,隐藏参数的使用

    场景 之前写了一篇文章,是redo日志全部丢失的情况下,数据库实例恢复的方式.但是,这次特殊在,实例恢复失败的情况下.非常规打开数据库(数据库已经不一致了,但是可以通过expdp导出,导出重要的数据) ...

  5. scp本地服务器和远程服务器拷贝文件

    上传本地文件到服务器 scp 本地路径 用户名@远程服务器ip:远程路径 下载文件 scp 用户名@远程服务器ip:远程路径 本地路径 -r 是上传下载本地目录到远程 远程文件

  6. gin-vue-admin 03 项目打包上线

    目录 作者视频 思路 环境要求 1. 配置nginx 2.打包前台vue代码 3.打包后台go代码 4. 上传代码到服务器 5. 后台运行power 6. 访问后台 开发场景: 1. nginx 配置 ...

  7. CSS 样式表引入的3种方式

    CSS 全称为层叠样式表(Cascading Style Sheet),用来定义 HTML 文件最终显示的外观.HTML 文件里引入 CSS 样式有3种方式: 外部样式表.内部样式表.行内样式. 外部 ...

  8. .NET周刊【5月第1期 2024-05-05】

    国内文章 一个开源轻量级的C#代码格式化工具(支持VS和VS Code) https://www.cnblogs.com/Can-daydayup/p/18164905 CSharpier是一个开源. ...

  9. 智能控制 | AIRIOT智慧楼宇管理解决方案

    许多行业客户在智慧楼宇的建设中主要面临运营管理低效,楼宇内部各个系统相互独立,不仅管理操作复杂,而且各系统间的数据无法分享,无法支撑大数据分析.此外,由于楼宇管理系统的低效,50%的建筑能耗是被浪费的 ...

  10. 一些常用但是不好记的css样式

    设置滚动条样式 /*定义滚动条宽高及背景,宽高分别对应横竖滚动条的尺寸*/ ::-webkit-scrollbar { width: 10px; /*对垂直流动条有效*/ height: 10px; ...