R语言检验独立性:卡方检验(Chi-square test)和费舍尔Fisher精确检验分析案例报告

article/2025/9/8 21:34:28

统计检验最常见的领域之一是检验列联表中的独立性。在这篇文章中,我将展示如何计算列联表,我将在列联表中引入两个流行的检验:卡方检验Fisher精确检验

什么是列联表?

列联表提供关于两个分类变量的测量的整数计数。最简单的列联表是一个2 × 2 频率表,由两个变量产生,每个变量有两个级别:

组/观察观察1观察2
第1组ñ1 ,1ñ1 ,2
第2组ñ2 ,1ñ2 ,2

给定这样一个表格,问题是第1组是否表现出与第2组相比的观测频率。这些组代表因变量,因为它们依赖于自变量的观察。请注意,列联表必须是一种常见的误解2 × 2; 它们可以具有任意数量的维度,具体取决于变量显示的级别数。尽管如此,应避免对具有多个维度的列联表进行统计检验,因为除其他原因外,解释结果将具有挑战性。

 数据集

要研究列联表的检验,我们将使用warpbreaks数据集:

 data(warpbreaks)
head(warpbreaks) 
##   breaks wool tension
## 1     26    A       L
## 2     30    A       L
## 3     54    A       L
## 4     25    A       L
## 5     70    A       L
## 6     52    A       L

这是一个包含来自纺织行业的三个变量的数据集:描述了羊毛拉断的次数  描述了经过检验的羊毛类型 张力∈ { L ,M,H}给出了施加在螺纹上的张力(低,中或高)。数据集中的每一行表示单个织机的测量值。为了解释不同织机的可变性,对羊毛张力的每种组合进行了9次测量,数据集总共包含9 ⋅ 2 ⋅ 3 = 549⋅2⋅3=54 观察结果。

分析目标

我们想确定一种类型的羊毛在不同程度的拉紧情况下是否优于另一种羊毛。为了研究我们是否可以找到一些差异的证据,让我们来看看数据:

为了研究断裂数的差异,让我们可视化数据:

从图中我们可以看出,总体而言,羊毛B与较少的断裂相关联。羊毛A似乎特别低劣,因为低张力。

转换为列联表

为了获得列联表,我们首先需要总结两种类型的羊毛和三种类型的张力的不同织机的断裂。

##   wool tension breaks
## 1    A       L    401
## 2    A       M    216
## 3    A       H    221
## 4    B       L    254
## 5    B       M    259
## 6    B       H    169

然后我们使用xtabs交叉表函数来生成列联表:

##     tension
## wool   L   M   H
##    A 401 216 221
##    B 254 259 169

现在,df我们有了应用统计检验所需的结构。

统计检验

用于确定来自不同组的测量值是否独立的两种最常见的检验是卡方检验(χ2检验)和费舍尔的精确检验。请注意,如果测量结果配对,则应使用McNemar检验(例如,可以识别单个织机)。

皮尔逊的卡方检验

该 χ2test是一种非参数检验,可应用于具有各种维度的列联表。检验名称源自χ2分布,即独立标准正态变量的平方分布。这是检验统计的分布χ2检验 

## [1] 7.900708e-07

由于p值小于0.05,我们可以在5%显着性水平上拒绝检验的零假设(断裂的频率独立于羊毛)。根据df,可以声称羊毛B比羊毛A明显更好(相对于断裂)。

Pearson残差

另一种方法是考虑检验的卡方值。该chisq.test函数提供卡方值的Pearson残差(根) 。与由平方差异产生的卡方值相反,残差不是平方的。因此,残差反映了观测值超过预期值(正值)或低于预期值(负值)的程度。在我们的数据集中,正值表示比预期更多的断裂,而负值表示更少的断点:

##     tension
## wool          L          M          H
##    A  2.0990516 -2.8348433  0.4082867
##    B -2.3267672  3.1423813 -0.4525797

残差表明,与羊毛A相比,羊毛B的低张力和高张力断裂比预期的要少。然而,对于中等张力,羊毛B比预期的断裂更多。再次,我们发现,整体羊毛B优于羊毛A.残差的值也表明羊毛B对于低张力(残差为2.1),高张力(0.41)和中等张力严重( - 2.8)。然而,残差有助于我们识别羊毛B的问题:它对中等张力的表现不佳。这将如何促进进一步发展?为了获得在所有张力水平下表现良好的羊毛,我们需要专注于改善羊毛B的中等张力。为此,我们可以考虑使羊毛A在中等张力下表现更好的特性。

费舍尔Fisher精确检验

Fisher的精确检验是用于检验独立性的非参数检验,通常仅用于检验2 × 2列联表。作为精确显着性检验,Fisher检验符合所有假设,在此基础上定义检验统计量的分布。实际上,这意味着错误拒绝率等于检验的显着性水平,对于近似检验,例如χ2检验。简而言之,Fisher的精确检验依赖于使用二项式系数根据超几何分布计算p值。

由于计算的因子可能变得非常大,Fisher精确检验可能不适用于大样本量。

请注意,无法指定检验的替代方法,df因为优势比(表示效果大小)仅定义为2 × 2 矩阵。

我们仍然可以执行Fisher精确检验以获得p值:

## [1] 8.162421e-07

得到的p值类似于从中获得的p值 χ2 检验并得出相同的结论:我们可以拒绝零假设,即羊毛的类型与不同应力水平下观察到的断裂次数无关。

转换为2乘2矩阵

为了指定备选假设并获得优势比,我们可以计算三者的检验 2 × 2可以构造的矩阵df

由于替代方案设置得更大,这意味着我们正在进行单尾检验,其中另一种假设是羊毛A与羊毛B的断裂次数相关(即我们预期O R > 1)。通过执行检验2 × 2表格,我们也获得了解释性:我们现在可以区分羊毛不同的具体条件。然而,在解释p值之前,我们需要纠正多个假设检验。在这种情况下,我们进行了三次检验。在这里,我们只需将0.05的初始显着性水平调整为0.053,根据Bonferroni方法。根据调整后的阈值,以下检验显着:

## [1] "L vs others"

这一发现表明,如果力较轻,羊毛B仅显着优于羊毛A. 请注意,我们也可以采用构建方法2 × 22 矩阵 χ2检验。随着χ2 然而,检验并不是必要的,因为我们的分析基于残差。

摘要:卡方对费舍尔的精确检验

以下是两个检验的属性摘要:

标准卡方检验费舍尔的精确检验
最小样本量
准确性近似精确
列联表任意维度通常为2x2
解释皮尔逊残差优势比

通常,Fisher精确检验优于卡方检验,因为它是一种精确检验。如果单个观察结果很少(例如小于10),则应特别避免卡方检验。由于Fisher的精确检验对于大样本量和精确度可能在计算上是不可行的,χ2 检验随着样本数量的增加而增加 χ2在这种情况下,检验是合适的替代。另一个优点了χ2 检验是它更适合维数超过的列联表 2 × 2。


http://chatgpt.dhexx.cn/article/8Tpx87IG.shtml

相关文章

SPSS图文教程:两个率的比较(卡方检验)及Fisher精确检验

很多小伙伴在第一次做四格表卡方检验时,看着输出结果可能会疑惑,我是看Pearson卡方结果呢,还是看Fisher精确检验的结果呢?如果你正好有此疑问,希望这篇文章能对你有所帮助。 本篇文章图片较多,加载可能略慢…

Fisher精确检验【转载】

转自:https://en.wikipedia.org/wiki/Fisher%27s_exact_test https://www.cnblogs.com/Dzhouqi/p/3440575.html 1.定义 Fishers exact test( 费希尔精确检验) 是用于分析列联表(contingency tables)统计显著性检验方法,它用于检验两个分类的关联(association)。虽然实际…

如何在 R 中进行 Fisher 精确检验

Fisher 精确检验 是一种显着性检验,当样本量较小时,它用于代替 22 表中的卡方检验。 本教程解释了如何在 R 中进行 Fisher 精确检验。 R中的Fisher精确检验 为了在 R 中进行 Fisher 精确检验,您只需要一个 22 数据集。使用下面的代码,我生成了一个假的 22 数据集作为示例…

Fisher精确检验

检验两个二进制变量是否是独立的。该检验可以分析 2x2 列联表,并产生精确的 p 值,以检验以下假设: H0:行变量和列变量是独立的 H1:行变量和列变量是相关的 Fisher 精确检验中的 p 值对于所有样本数量都是准确…

方差分析/卡方/fisher精确检验

方差分析 前提条件: 1、各样本须是相互独立的随机样本; 2、各样本来自正态分布总体; 3、各总体方差相等,即方差齐。(方差不齐,用非参数检验) 适用数据情况: 分类变量的连续变量 例如: 卡方检验 **分层…

Fisher exact test费雪精确检验

参考:https://wenku.baidu.com/view/2296e667b6360b4c2e3f5727a5e9856a5612268a.html https://en.wikipedia.org/wiki/Fisher%27s_exact_test 概述 Fisher精确检验是在列联表分析中使用的统计显着性检验。[1] [2] [3]尽管实际上是在样本量较小的情况下使用的&…

数学建模拓展内容:卡方检验和Fisher精确性检验(附有SPSS使用步骤)

卡方检验和Fisher精确性检验 卡方拟合度检验卡方独立性检验卡方检验的前提假设Fisher精确性检验 卡方拟合度检验 卡方拟合度检验概要:卡方拟合度检验也被称为单因素卡方检验,用于检验一个分类变量的预期频率和观察到的频率之间是否存在显著差异。 卡方…

Fisher精确检验.医学统计实例详解-医学统计助手★卡方检验,t检验,F检验,秩和检验,方差分析

Fisher精确检验是一种在统计分析中经常使用的方法,旨在评估两个分类变量之间是否存在显著关系。这种方法由罗纳德A费舍尔(Ronald A. Fisher)于20世纪20年代提出,并被广泛应用于小样本数据集的分析。与卡方检验相比,Fis…

运维之道 | Mysql主从复制+mycat读写分离

运维之道 | Mysql主从复制 Mycat读写分离 1、什么是读写分离 读写分离,基本的原理是让主数据库处理事务性增、删、改操作(INSERT、UPDATE、DROP),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据…

生产上遇到的一例mycat读写分离延时问题

问题描述 场景是这样的,我们的支付系统在一笔支付完成后,需要发出通知给到商户。支付完成的消息通过消息队列发送给通知的服务。通知服务的有一部分处理逻辑是这样的: notifyPersist.saveNotifyRecord(notifyRecord);notifyRecord rpNotify…

MySQL数据库mycat读写分离

mycat读写分离 Mycat的读写分离是建立在Mysq的主从复制的基础上的 修改配置文件 schema.xml <?xml version"1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat"http://io.mycat/"><schem…

MySQL主从配置与Mycat读写分离

MySQL主从配置与Mycat读写分离 一、主数据库配置 编辑配置文件 添加如下内容 server-id1 binlog-do-dbmaster_db1 #备份的数据库 log-binmysql-bin binlog-ignore-dbmysql重启mysql 创建一个允许从服务器来访问的用户(主服务器)&#xff1a; grant replication slave on *.* …

mycat读写分离实验

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程 首先搭建mysql主从环境&#xff0c;及mycat安装 配置mycat的schema.xml文件 <?xml version"1.0"?> <!DOCTYPE mycat…

MyCAT读写分离分库分表

MyCAT读写分离及分库分表 第1章 MyCAT分布式系统解决方案 1.1 分布式系统介绍: 分布式系统特性: 1. 透明性: a) 分布式系统对用户来说是透明的,一个分布式系统在用户面前的表现就像一个传统的单机处理机分时系统,可以让用户不比了解内部结构就可以使用 2. 扩展性: a) 分…

MYCAT读写分离,分库分表

一、读写分离 我这里的环境是mha&#xff08;双主双从&#xff09;mycat ip主机名 硬盘/G 内存/Gcpu/块192.168.86.10master012022192.168.86.20master022022192.168.86.30slave012022192.168.86.40slave022022192.168.86.100manager2022192.168.86.200mycat2022 https://bl…

mycat读写分离测试

网上的&#xff1a; MyCAT的读写分离机制如下&#xff1a; 1)事务内的SQL&#xff0c;全部走写节点&#xff0c;除非某个select语句以注释/*balance*/开头 2)自动提交的select语句会走读节点&#xff0c;并在所有可用读节点中间随机负载均衡 3)当某个主节点宕机&#xff0c…

MyCat读写分离

一、MyCat读写分离 数据库读写分离对于大型系统或者访问量很高的互联网应用来说&#xff0c;是必不可少的一个重要功能。对于MySQL来说&#xff0c;标准的读写分离是主从模式&#xff0c;一个写节点Master后面跟着多个读节点&#xff0c;读节点的数量取决于系统的压力&#xff…

MySQL-Mycat读写分离

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 MySQL-Mycat读写分离 一、读写分离1.什么是读写分离2.读写分离的好处 Mycat是什么&#xff1f;架构 部署环境部署mycat补充 启动mycat启动报错 测试客户端连接报错 总结原理及…

读写分离时mycat不能链接mysql_Mycat读写分离配置实践

Mycat读写分离配置实践 发布时间&#xff1a;2020-08-16 01:08:20 来源&#xff1a;ITPUB博客 阅读&#xff1a;81 作者&#xff1a;jeanron100 工作这些年来&#xff0c;也去了一些地方&#xff0c;有了一些见闻&#xff0c;隐隐感觉很多文化和猫有着千丝万缕的联系。就拿IT行…

Mycat读写分离的简单实现

文章目录 1、Mycat读写分离的配置1.1、Mycat是什么1.2、Mycat能干什么1.2.1、数据库的读写分离1.2.1.1、数据库读写分离图解 1.2.2、数据库分库分表1.2.2.1、水平拆分&#xff08;分库&#xff09;1.2.2.2、垂直拆分&#xff08;分表&#xff09; 1.3、Mycat的搭建1.3.1、前期准…