fisher精确检验和卡方检验的区别(fisher精确检验无法打开临时文件)

2022-11-14 20:18:06 0

fisher精确检验和卡方检验的区别(fisher精确检验无法打开临时文件)

上期回顾

MIT课程笔记③ | 随机试验分析

本文是TalkingData 钟大伟学习MIT《社会科学中的数据分析》课件的基础上,补充了相关信息、增加了个人理解,本篇介绍了Fisher精确检验。因果关系系列共四篇,本周是第四篇完结篇。

《社会科学中的数据分析》是MIT统计与数据科学微硕士项目中的一门课程,本项目已经开课,点击【阅读原文】可了解项目详情。

前面三篇我们介绍了,并说明该模型三要素其中的两个:潜在结果(Potential Outcome)、个体处理稳定性假设(Stable Unit Treatment Value Assumption, SUTVA),介绍了分配机制(Assignment Mechanism),详细说明对处理效果的估计方法、。并进一步结合一个具体实例说明,介绍置信区间与基于正态分布的假设检验计算。

针对RCT数据的分析有两种方法,一种是统计学家J. Neyman提出的置信区间理论,一个是R. A. Fisher提出的Fisher精确检验(Fisher exact test),本文就来介绍因果关系分析的最后一部分内容—Fisher精确检验。

另一种不确定性的视角

跟随Fisher,我们来开始一段与之前看到的统计(Neyman的置信区间理论)不一样的旅程。

在今天的大数据时代,由于巨量数据的收集,越来越多的数据集代表了整个人群,而不再仅仅是人群的一个抽样子集。这时Fisher方法就变得越来越有用。数据中不确定性不再来自于抽样。如果我们有整个人群,那不确定性来自于哪里呢?我们还需要置信区间吗?

此时不确定性仍然存在,因为仍然存在缺失的数据:每个个体要么被处理,要么被用于对照,但这两种情况不会同时发生。由于每个个体有一对不同的潜在结果(for treated and control),对于自然赋予我们的每一次分配,我们都会得到一个稍微不同的结果。

在大数据的情况下,正确的思考方式是这样的:假设在Facebook上进行一个实验,Facebook关心它的全量用户,而不是其中一个用户子集,也不关心Facebook之外的人,即不用把Facebook上的用户看做某一个人群的一个子集。

对任何人都没用效果的处理?

Fisher提出:是否可以拒绝“一个处理对任何人都没有效果”的假设。他感兴趣的是一个极端的零假设对于所有的i都成立。

注意!这个极端的零假设与“平均处理效果是零”的零假设是不同的。在没有人的处理效果是零的情况下,但平均处理效果可以是零,比如班级一半人的处理效果是+10,另一半人的处理效果是-10,那么平均效果就是0,但每个人的处理效果都不是零。

极端零假设可以让我们决定每个单元在H_0下的反事实。如果H_0是正确的,那么缺失数据的问题就消失了,因为一个人被处理与没被处理值是一样的,如果一个“被处理”单元观察到结果值是5,那么没被处理的结果值也应该是5。

这个假设美妙之处,在于对于任何我们感兴趣的检验统计,我们都可以计算在极端零假设下得到特定真实观测值的概率。

Fisher精确检验

假设我们选择处理状态均值的差值绝对值作为我们的统计量:

通过随机重分组,我们可以计算一个随机分组后统计值大于等于实际实验分配的真值(绝对值形式)的概率。取绝对值是由于这是一个双边假设(two-tailed test)。这个计算会给出在这个特殊零假设条件的p值:

统计量的可能取值:

W是对处理与控制分组(虚拟)随机分配的所有可能排列组合。

例子:咳嗽和糖浆

下面是关于儿童喝没喝糖浆的随机研究,Imbens和Rubin(2015)使用这个例子来说明Fisher精确检验,具体参考Imbens和Rubin的《统计学、 社会学和生物医学中的因果推断》。

(1) 观测数据

观测值是夜里咳嗽的严重程度(从1到6),首先假设我们有6名儿童的数据如下:

表:6名儿童咳嗽频率的观察结果

(2) 基于数据计算处理效果统计量的值

(3) 填充sharp零假设情况下的反事实

表:以下是6名儿童咳嗽频率的观察结果,括号中的值是在“没有效果”零假设情况下补充的缺失潜在结果

(4) 所有可能的分配向量和对应的统计值

在H_0条件下,计算任何可能的伪分配差值(两组观测值均值的差值)。即使“处理”对任何人没有效果,存在几率因为个体本身的不同,观察到处理组与控制组之间的差别,这个差别完全来自于对处理组与控制组的选择。

下表中每一个行代表一个假的随机分组,W_1列对应的值为在该随机分组中第1个儿童被分到了那个组,以此类推其它列,0代表控制组,1代表处理组。最后一列为在该随机分组情况下处理效果统计量的值。

(5) 如何计算P值?

基于P值的模拟

如果有很多观测值,由于计算量太大,不太可能计算所有的排列组合(N选K的组合K是处理组的对象个数,N是总人群对象个数),那怎么办呢?

可以通过模拟方法解决:生成一个随机分配,计算统计值,然后重复M次,计算这些统计值大于观测到统计真值的概率。

比如咳嗽和糖浆例子(35名儿童喝糖浆,35名儿童在控制组),那么70选35的组合会有112186277816662870000个,计算量很大,通过模拟计算结果如下表:

随着模型次的增大p值越来越稳定,标准差越来越小。模拟次数没有最优的选择,具体看计算机的算力情况。

本文提到的《社会科学中的数据分析》这门课属于MIT统计与数据科学微硕士项目,在学习且通过相关的考核后,即可获得MIT统计与数据科学微硕士证书。

想了解该项目详情,想了解该项目详情,可点击阅读原文。

参考资源:

https://prod-edxapp.edx-cdn.org/assets/courseware/v1/eca2f3496cb2f796562978822ec3bbc5/asset-v1:MITx+14.310x+1T2019+type@asset+block/14310x_Lecture15_New_ToUpload.pdf

作者:TalkingData 钟大伟

本文转自: TalkingData数据学堂

部分图片来源于网络,如有侵权,请联系删除

关键字:  fisher精确检验和卡方检验的区别  fisher精确检验无法打开临时文件  fisher精确检验法的适用条件是  fisher精确检验值用什么表示  fisher精确检验结果怎么看