卡方检验 (Chi-square test / Chi-square goodness-of-fit test)

Posted dqhl1990

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了卡方检验 (Chi-square test / Chi-square goodness-of-fit test)相关的知识,希望对你有一定的参考价值。

卡方检验 (Chi-square test / Chi-square goodness-of-fit test)


1. 什么是卡方检验

卡方检验是一种以 χ 2 \\chi^2 χ2分布为基础的用途广泛的假设检验方法。是一种非参数检验方法。它的无效假设 H 0 H_0 H0为:观察频数与期望频数没有显著性差异。

2. 独立性检验 (Independence)

A test of independence assesses whether unpaired observations on two variables, expressed in a contingency table, are independent of each other

独立性检验评估的是,在一个列联表中,不成对的观测对象中的两个变量是不是相互独立的

以下面的表格为例,我们来探究喝牛奶对感冒发病率有没有影响:

实际值感冒人数未感冒人数合计感冒率
喝牛奶组439613930.94%
不喝牛奶组288411225.00%
合计7118025128.29%

2.1 期望值计算

根据无效假设 H 0 H_0 H0,我们假设喝不喝牛奶和感冒与否并没有显著性关系,则人群的感冒率为:
43 + 28 43 + 28 + 96 + 84 = 28.29 % \\frac43 + 2843+28+96+84 = 28.29\\% 43+28+96+8443+28=28.29%
则对于上述的实验对象,我们能够得到每个格中的期望值

期望值感冒人数未感冒人数合计感冒率
喝牛奶组139 * (1-0.2829)139*0.282913928.29%
不喝牛奶组112*(1-0.2829)112*0.282911228.29%
合计7118025128.29%

卡方检验就是用来比较实际值与期望值是不是有显著性差异的。如果没有,证明控制变量(喝不喝牛奶)是不会影响因变量(感不感冒)的;有显著性差异,就证明就关系。

2.2 卡方值计算

χ 2 = ∑ ( A − E ) 2 E = ∑ i = 1 k ( A i − n p i ) 2 n p i (1) \\chi^2 = \\sum\\frac(A-E)^2E = \\sum_i=1^k\\frac(A_i-np_i)^2np_i \\tag1 χ2=E(AE)2=i=1knpi(Ainpi)2(1)

其中, A i A_i Ai为单元格 i i i中的观察值, p i p_i pi为单元格 i i i中的在 H 0 H_0 H0假设前提下的概率, k k k为单元格数。

上例中 χ 2 = 1.077 \\chi^2 = 1.077 χ2=1.077

2.3 H 0 H_0 H0假设拒绝与接受

根据得到的 χ 2 \\chi^2 χ2值,还并不能直接到的p-value。因为卡方分布根据其自由度有所不同,如下图所示:

卡方分布的概率密度函数如下:
f ( x ; k ) = x ( k / 2 − 1 ) e − x / 2 2 k / 2 Γ ( k 2 ) ,   x > 0 0 , o t h e r w i s e (2) f(x; k) = \\begincases \\fracx^(k/2-1)e^-x/22^k/2\\Gamma(\\frack2), &\\ x > 0\\\\ 0,&otherwise \\endcases\\tag2 f(x;k)=2k/2Γ(2k)x(k/21)ex/2,0, x>0otherwise(2)
其中 k k k为自由度。

所以,首先需要计算所研究样本的自由度
k = ( R − 1 ) ( C − 1 ) (3) k = (R -1)(C-1)\\tag3 k=(R1)(C1)(3)
其中 R R R为单元格的行数, C C C为单元格的列数。
上述例子中,自由度 k = ( 2 − 1 ) ( 2 − 1 ) = 1 k = (2-1)(2-1) = 1 k=(21)(21)=1

根据所给定的自由度 k k k以及 χ 2 \\chi^2 χ2值,即可计算p-value。

对于得到的p-value,与自己指定的显著性水平作比较(通常将0.05作为显著性水平),如果得到的p-value小于0.05,那我们认为样本所表现出来的结果是小概率事件,则我们有理由拒绝原假设 H 0 H_0 H0;否则,我们需要接受原假设 H 0 H_0 H0

通常情况下,也可以通过查表得形式来选择接受或者拒绝原假设。
如下表:

我们看到, χ 2 \\chi^2 χ2分布在自由度 k = 1 k=1 k=1 p = 0.05 p=0.05 p=0.05时的取值为3.84。我们得到的 χ 2 \\chi^2 χ2值1.077,小于3.84,且接近于 p = 0.3 p=0.3 p=0.3时的 χ 2 \\chi^2 χ2值1.07,故不能拒绝原假设 H 0 H_0 H0


3 适合度检验 (Goodness of fit)

A test of goodness of fit establishes whether an observed frequency distribution differs from a theoretical distribution

适合度检验展示了一个观察到的频率分布是否与一个理论分布不同。

以掷骰子为例,下表为投掷120次六面骰子的实际观察值:

点数观察值
118
219
323
420
516
624

3.1 期望值

我们知道,在正常情况下,掷骰子服从二项分布 X ∼ B ( n , p ) X\\sim B(n, p) XB(n,p),其数学期望 E [ X ] = n p E[X]=np E[X]=np,方差为 V a r [ X ] = n p ( 1 − p ) Var[X] = np(1-p) Var[X]=np(1p)

在进行适合度检验时,我们的原假设 H 0 H_0 H0为观察到的掷骰子结果符合理论上的二项分布(Binomial distribution)。那么,我们就能得到掷骰子的理论值如下表:

点数观察值
120
220
320
420
520
620

3.2 χ 2 \\chi^2 χ2值计算

根据公式(1),我们得到
χ 2 = 2.3 \\chi^2 = 2.3 χ2=2.3

3.3 自由度确定

对于适合度检验,自由度的计算按照以下公式:
k = C − M k = C - M k=CM
其中, C C C为我们观察到的类别数,此例中为6; M M M为我们要比较的理论分布的参数的个数,此例中为1;因此 k = 5 k = 5 k=5

3.4 H 0 H_0 H0假设接受与拒绝

通过根据公式(2)或者查表我们能够得到,统计量 χ 2 = 2.3 \\chi^2 = 2.3 χ2=2.3所对应的p-value大约为0

以上是关于卡方检验 (Chi-square test / Chi-square goodness-of-fit test)的主要内容,如果未能解决你的问题,请参考以下文章

R卡方检验(CHI-SQUARE TEST)

R卡方独立性检验(Chi-Square Test of Independence)

Chi-Square Statistic/Distribution

如何用spss做卡方检验时计算OR值?

如何用spss做卡方检验时计算OR值?

spss里面卡方检验的结果怎么解释啊