2×3卡方检验prism_卡方独立性检验原理

这篇文章主要讲了两个部分,一个是卡方检验的推导,一个是卡方检验应该取多少样本量。

卡方独立性检验是为了检验两个变量是否独立,我们先来回顾一下卡方独立性检验的流程:

1、统计列联表,计算观察值:

3c916518a7d90db4f96e8e39b17f2842.png
表一

图中的数字都是频数,例如男士分期的频数为80,女士分期的频数是20。图中的频数90,110,30,70这些是我们的观察值,为别用

表示。

2、做出假设,计算期望值:

我们的假设是性别跟是否分期是独立的,所以我们的期望值应该是如下图所示:

60a135f96a6b27e655733a139d20b62e.png

图中的期望值80,120,40,80我们用

表示。

3、计算卡方统计量

卡方统计量

,服从自由度为1的卡方分布。

经过查表,我们可以算出p值为0.012,在0.05的阈值下,我们认为观察到的情况是(表一)小概率时间,所以拒绝了性别跟是否分期是独立的的原假设。

接下来,我们来推导出卡方统计量为什么是这个样子的:

,其中
是观察值,
是期望值(即变量独立的假设下的期望值)

我们先来了解几个必要的知识点:

定义1、卡方分布的定义(抄自维基百科):

k个随机变量

是相互独立,符合标准正态分布的随机变量(数学期望为0、方差为1),则随机变量
的平方和
,被称为服从自由度为
卡方分布,记作

这个定义中的关键之处在于随机变量

是标准正态分布且是相互独立的。

定理2、若变量A、B的分布都是正态分布,那么‘变量A、B相互独立’与‘A、B的协方差为0‘是等价命题。也就是说A、B独立则A、B的相关性为0。A、B的相关性为0则A、B独立。

定理3、设随机向量

的协方差矩阵为C,必存在矩阵A,使得
,且
的协方差矩阵为单位矩阵。

下面我们来猜想到底这个列联表的卡方统计量的公式是怎么得来的。

af74029628971b080aeae30a73487824.png

现在我们设有变量A、B.

A有m种互斥的可能取值,分别记为

,每种取值的概率分别为

B有n种互斥的可能取值,分别记为

。每种取值的概率分别为

我们做卡方检验,原假设时A、B是独立的。在这个假设下,有:

显然N次抽样的情况下

被抽到的次数呈二项分布,均值为
,方差为

结合中心极限定律可知,当N很大时

被抽到的次数呈正态分布,均值为
,方差为

现在我们已经有了m*n个分布呈正态分布的变量(A,B),已经满足卡方统计量中正态分布的要求,但是还差一个独立性。所以很自然想到如果用定理3去除这些变量的相关性,然后再计算卡方统计量岂不是搞定了。

事实上,确实是这样的,下面我们就来验证这个想法。

为了书写简便我们将这m*m种可能性重排,对应关系为

,

对应的概率

个变量有如下关系
,

所以应该先任意丢弃一个变量再来计算协方差矩阵。

记Z的协方差矩阵为C,第i行第j列元素记为

,表示
的协方差,

显然:

根据定理3,我们一定找得出矩阵B,使得

的协方差矩阵为单位矩阵,

所以

的每个元素均的分布均为正态分布,且两两间相互独立。

所以我们推论的卡方统计量为:

真正的卡方统计量为:

欲证

只需

只需

是单位矩阵)

又因为

所以

显然(^^)

所以证得

总结一下,卡方独立性检验的公式由来就是:

在A、B变量独立的原假设下,将列联表中的变量(正态分布)用线性变换去除相关性(等同于独立,见定理2),然后再求得卡方统计量

下面我们来看看卡方独立性检验时应该取多少样本量

在做项目的时候,我们有几百万的样本,如果用全部的样本去做卡方检验的话,会出现这种情况:

除了随机属性,90%以上的属性与标签(二分类)的卡方检验都是显著的。这样的话对于属性和标签的卡方检验还有什么意义?

其实这里涉及到卡方检验的灵敏度问题,样本量越大卡方检验越灵敏。

我们看看卡方统计量中的一项

。假设
偏离期望值的量的比例为
,即所以

不变的情况下样本量越大导致
越大,导致卡方统计量
越大,导致p值越小。

所以就得出了我们的结论:样本量越大,卡方检验越灵敏。

回到我们的例子,如果用几百万的数据去做卡方检验的话,卡方检验就十分灵敏,两个变量稍微的相关都能检查出来,但这样检查出来的变量是我们想要的吗?

显然不是,因为加入变量是有成本的:

1、计算成本

2、过拟合风险

3、由于共线性导致的变量失效

所以不是所有相关的变量我们都要列入模型中,而是对模型贡献大的变量要列入模型中。

所以我们要的是容易检查出相关性的变量。

要实现这个目的就要让卡方检验不那么灵敏,即减少卡方检验的样本量

所以是这么个逻辑:

这些变量连不灵敏的卡方检验都检测出显著,所以这些变量跟标签肯定很不独立,这就是我想要的变量。

总结一下,对于用于筛选特征的卡方检验,不是样本量越多越好。有时候,为了得到不那么灵敏的卡方检验,我们减少了样本量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

不断电系统的容量如何计算?

不断电系统的容量如何计算?  1.目前市面上销售的不断电系统大都以VA(视在功率)为单位,V表示电压,A表示电流,电压乘以电流就表示功率,也就是不断电系统的容量;以一部500VA的不断电系统来说明,当…

AVL树----java

AVL树----java AVL树是高度平衡的二叉查找树 1.单旋转LL旋转 理解记忆&#xff1a;1.在不平衡的节点的左孩子的左孩子插入导致的不平衡&#xff0c;所以叫LL private AVLTreeNode<T> leftLeftRotation(AVLTreeNode<T> k2) {AVLTreeNode<T> k1;k1 k2.left;k2…

其实你女朋友也不是很爱你...

1 你玩她口红化妆品试试▼2 我妈介绍的相亲对象优点&#xff1a;每天主动问早缺点&#xff1a;每天只问早▼3 女儿过度高估老爸了▼4 国际油价暴跌全军出击买买买▼5 有人喜欢我吗&#xff1f;我爱吃炸鸡▼6 有厕纸的那部分人还有全球百分之50的双黄连▼7 其实生物书比较…

Gestalt - 在浏览器里用 python/ruby 写客户端脚本

Gestalt 是 Mix Online Lab 创造出来的一个框架&#xff0c;利用它我们可以在浏览器里用 python/ruby 写脚本来操纵 DHTML 的各种对象&#xff0c;其作用就跟 javascript 类似。一个例子&#xff1a;<script language"javascript"src"gestalt.js"/>&…

文末有彩蛋 | 第四周课程回顾与总结

我们在前三周的课程上&#xff08;第一周、第二周、第三周&#xff09;&#xff0c;系统讲授了 FOSS 和 COSS 的课程内容&#xff0c;第四周&#xff0c;我们开始进入 OSPO&#xff08;开源项目办公室&#xff09;的部分。本导学班在调研全球开源教育与课程的基础上&#xff0c…

win10 软路由_「保姆级」万晓博带你用软路由搭建家庭网络中心第1节-准备工作...

本章前言&#xff1a;  去年无意中在群我的一个群里大佬提起过软路由&#xff0c;那时候对这个需求并不是很大&#xff0c;所以对软路由只是名字概念而已&#xff0c;但是后面群里就一软路由这个话题 炒起来了&#xff0c;有的人说软路由就是利用自己闲置设备(PC笔记本)的或者…

doxygen如何生成JAVA文档_有用Doxygen生成文档的吗?发一篇Doxygen的使用文档给大家,从网上搜来的。...

第二章&#xff1a;Documenting the code特殊的注释一种特殊的注释是带有一些额外标记的C/C注释块&#xff0c;这样doxygen就知道需要将其加入到文档中了。对于每个代码块都有两种注释&#xff0c;这两种注释组成了文档&#xff1a;一种是brief 描述另一种是detailed 描述&…

【转】构建Android平台Google Map应用

http://www.moandroid.com/?p1360 Android 的新版本提供了的功能&#xff0c;通过这段视频&#xff0c;大家可以先简单了解下&#xff1a; Android 提供的地图&#xff08;Map&#xff09;功能可能是广大开发者非常关心的一个部分。到目前为止&#xff0c;开发内嵌式地图应用的…

将虚拟机转换成模板

在制作模板前&#xff0c;先要准备一个干净的操作系统&#xff0c;或者安装上经常使用的软件在虚拟机中&#xff0c;安装好后&#xff0c;将其正常关机&#xff0c;之后就可以转换成模板了。转换后的虚拟机将不会在主机管理中看到&#xff0c;而只能在模板中看到。克隆转换时克…

假如你学过高数,那你这一辈子都不会忘记这个人

▲ 点击查看2020年3月&#xff0c;菲列兹伦敦奖评奖委员会宣布&#xff0c;2020年度菲列兹伦敦奖将授予三位科学家&#xff0c;除开美国的 Vinokur 博士、以及德国的Steglich 教授以外&#xff0c;最后一位就是清华大学副校长、北京量子信息科学研究院院长薛其坤院士。薛其坤院…

在VHD文件上安装Windows 7或Windows 2008 R2

以下操作在VMware Workstation 6.5的虚拟环境中操作成功。安装方法&#xff1a;1、以Windows 7或Windows 2008 R2安装光盘启动计算机2、在屏幕出现“现在安装”&#xff0c;同时按ShiftF10&#xff0c;出现一个命令提示窗口。3、依次输入以下命令diskpartlist diskselect disk …

.Net Core with 微服务 - 分布式事务 - TCC

上一次我们讲解了分布式事务的 2PC、3PC 。那么这次我们来理一下 TCC 事务。本次还是讲解 TCC 的原理跟 .NET 其实没有关系。TCC Try 准备阶段&#xff0c;尝试执行业务Confirm 完成业务Cancel 回滚准备阶段的业务TCC 事务其实是 2PC 的一个扩展。上一次我们说了 2PC &#xff…

第10章-管理Hadoop集群-hadoop 安全模式相关知识点

为什么80%的码农都做不了架构师&#xff1f;>>> 1、namenode启动时&#xff0c;namenode节点都做了哪些动作&#xff1f;fsimage和edits有什么变化&#xff1f; 2、namenode什么时候开始监听RPC和HTTP请求&#xff1f; namenode启动时&#xff0c;首先将映像文件(f…

oracle挂证多少钱一个月_惊呆,一条sql竟然把Oracle搞挂了

一条sql就能把oracle搞挂了&#xff0c;真的是不敢相信啊&#xff0c;前几天生产上确实出现了这样一个故障&#xff0c;我们来一起做一个事件回放。系统介绍系统架构见下图&#xff1a;fileapplication1和application2是一个分布式系统中的2个应用&#xff0c;application1连接…

linux图形界面鼠标变成小手_加载Linux系统,树莓派变身桌面电脑

开始正文前&#xff0c;我们想听听娃说了什么操作系统&#xff0c;英文名叫做Operation System&#xff0c;简写为OS&#xff0c;是电子设备运行的基础软件&#xff0c;按运行的设备类型来分&#xff0c;操作系统分为手机操作系统&#xff0c;桌面电脑操作系统和服务器操作系统…

二叉查找树转换成有序的双向链表

首先对于二叉查找树的定义和性质&#xff0c;以及如何得到二叉查找树某个节点的子树下的最大值和最小值和插入一个值的内容可以参考这两篇文章&#xff1a; &#xff08;1&#xff09;http://www.cnblogs.com/chenping-987123/archive/2010/09/25/1834341.html &#xff08;2&a…

就你这个求婚态度,能嫁给你才怪!

1 兄弟&#xff01;哪有求着婚还走神的&#xff1f;&#xff01;▼2 喝奶茶专用口罩&#xff01;▼3 把广东茶楼的菜都点一遍是什么体验&#xff1f;▼4 你觉不觉得这个门锁有点像托马斯的小火车▼5 手里的塑料袋像极了塑料兄弟情▼6 小朋友看《喜羊羊》看到的是坏人的愚…

Remoting and MSMQ 结合做的一个DEMO

真的非常感谢CnBlogs.com,因为有很多教程里写的知识点并不全面,而且也没附带例子.通过这里我学习到了很多很多.希望网站能越办越好哦.下面是我学习分布式开发时写的一个小demo,当然功能有限,技术也很低.希望大师们能拍拍砖,不吝赐教.呵呵软件运行的一个截图下面说说流程吧,1:利…

再聊一次值类型和引用类型

C#值类型&#xff0c;作为函数形参&#xff0c;形参被修改&#xff0c;不影响原值。这是我们在初始学习编程时需要记住的内容&#xff0c;我们也是一直这样践行的。先说结论&#xff1a;这是不准确的。为什么提出这样看似很浅显的问题&#xff0c;是因为有次我在使用ArraySegme…

java+字节码工具64位_jclasslib 下载-jclasslib 32位64位(java字节码查看工具) 5.1 官方版 - 河东下载站...

jclasslib是款免费的开源java字节码的查看工具&#xff1b;它支持进行查看您需要进行使用汉字运用到的Java字节码&#xff0c;并且还拥有一个的类库来让开发者进行读取&#xff0c;包括了修改、对JavaClass文件、字节码的写入等&#xff1b;用户这进行使用的过程中&#xff0c;…