情報環境科学C・第 13 回 (2012/01/18) カイ二乗検定 カイ二乗適合度検定 • カテゴリーごとの観測度数:O1 , . . . , Ok (Oj : 第 j カテゴリーに属する観測数) • 帰無仮説 H0 : 理論比率 p1 , . . . , pk に従う (p1 + · · · + pk = 1). ∑ ∑ – 期待度数:Ej = pj n (j = 1, . . . , k) (n = kj=1 Oj = kj=1 Ej ) k ∑ (Oj − Ej )2 (H0 のもとで近似的に X 2 ∼ χ2k−1 ) • 検定統計量:X = Ej 2 j=1 独立性・同等性のカイ二乗検定 • r × c 分割表:観測度数 ··· ··· Bc O1c .. . 合計 A1 .. . B1 O11 .. . Ar 合計 Or1 nB1 ··· ··· Orc nBc nAr n nA1 .. . nAi = Oi1 + · · · + Oic (i = 1, . . . , r) nBj = O1j + · · · + Orj (j = 1, . . . , c) ∑ ∑ n = ri=1 nAi = cj=1 nBj • 帰無仮説 H0 : 因子 A, B は独立である. (A1 , . . . , Ar の各水準について B1 , . . . , Bc の生起比率は等しい) nAi nBj – 期待度数:Eij = (i = 1, . . . , r; j = 1, . . . , c) n ∑ (Oij − Eij )2 (H0 のもとで近似的に X 2 ∼ χ2(r−1)(c−1) ) • 検定統計量:X 2 = Eij i,j – 一部のセルの度数 Oij が非常に小さい場合,カイ二乗近似は適切でない. このような場合には Fisher の正確検定法を用いるとよい. • 2×2分割表の場合 A1 A2 合計 B1 O11 O21 nB1 B2 O12 O22 nB2 合計 nA1 nA2 n n(O11 O22 − O12 O21 )2 (H0 のもとで近似的に X 2 ∼ χ21 ) nA1 nA2 nB1 nB2 前回取り上げた比率の検定と同等である (Z02 = X 2 ). – 検定統計量:X 2 = – Yates の連続補正統計量: ∑ (|Oij − Eij | − 1/2)2 n(|O11 O22 − O12 O21 | − n/2)2 XC2 = = Eij nA1 nA2 nB1 nB2 i,j 例題 (1) Mendel によるエンドウ豆の交配実験で,4種の表現型に対する観測数が次表のよう に得られた.Mendel の法則に従えば,4種の表現型が 9 : 3 : 3 : 1 の割合で現れる はずである.この法則に従っているかどうかを検定しなさい. 丸い,黄色 しわ,黄色 丸い,緑色 しわ,緑色 合計 315 101 108 32 556 (出典)Bickel, P. J. & Doksum, K. A. (2001). Mathematical Statistics: Basic Ideas and Selected Topics, Vol.1. Prentice Hall. (2) 次表は ABO 式血液型別の人数のデータで,抗原 A, B の有無により類別したもの である. 「抗原 A, B は独立である」という仮説を検定しなさい. 抗原 B なし あり 抗原 A なし あり 計 (O) 202 (A) 179 381 (B) 35 (AB) 6 41 計 237 185 422 (出典)Davison, A. C. (2003). Statistical Models. Cambridge University Press. 解答例 9 3 3 1 (1) 帰無仮説 H0 : (p1 , p2 , p3 , p4 ) = ( 16 , 16 , 16 , 16 ) のもとで,各表現型に対する期待度数 の値は,順に 312.75, 104.25, 104.25, 34.75 である.よって,検定統計量の値は (315 − 312.75)2 (101 − 104.25)2 (108 − 104.25)2 (32 − 34.75)2 + + + = 0.470 312.75 104.25 104.25 34.75 となる.自由度 4 − 1 = 3 のカイ二乗分布に基づく p 値は Pr(X 2 > 0.470) = 0.9254 であるから,実験結果は理論比率に従っていると言ってよい. X2 = (2) 「抗原 A, B が独立である」という仮説のもとで,各血液型の期待度数の値は (O) 237·381 422 = 213.97, (A) 185·381 422 = 167.03, (B) 237·41 422 = 23.03, (AB) 185·41 422 = 17.97 であり,検定統計量の値は X 2 = 15.732 (XC2 = 14.45) となる.自由度 1 のカイ二 乗分布に基づく p 値は 0.0001 未満であり,独立性の仮説は強く棄却される. 課題 スイートピーの交配実験で,4種の形態をもつ第2代交配種が次表のように観測さ れた.Mendel の法則 (9:3:3:1 の割合で出現) に従っているかどうかを検定しなさい. 紫で長形 紫で丸形 赤で長形 赤で丸形 合計 177 15 15 49 256 (出典)Brown & Hollander (1977). Statistics: A Biomedical Introduction. Wiley. 情報環境科学C・第 13 回 (2012/01/18) 例題の実行例 (1) 期待度数,検定統計量などの値を手計算で求めてみる. ✓ ✏ > mendel.O <- c(315,101,108,32) # 観測度数 > mendel.p <- c(9/16,3/16,3/16,1/16) # 理論比率(帰無仮説) > mendel.E <- sum(mendel.O)*mendel.p # 期待度数の計算 > mendel.E [1] 312.75 104.25 104.25 34.75 > mendel.X2 <- sum((mendel.O-mendel.E)^2/mendel.E) > mendel.X2; 1-pchisq(mendel.X2,df=3) # 検定統計量, p 値 [1] 0.470024 [1] 0.9254259 ✒ 関数 chisq.test を利用する.手計算での結果に一致する. ✓ ✑ ✏ > chisq.test(mendel.O,p=mendel.p) Chi-squared test for given probabilities data: mendel.O X-squared = 0.47, df = 3, p-value = 0.9254 ✒ ✑ (2) 期待度数,検定統計量などの値を手計算で求めてみる. 行・列合計は関数 apply を用いると便利である.行合計 btype.rsum(列ベクトル)と列合計 t(btype.csum)(行ベクトル)の積を総度数 sum(btype.O) で割ると,期待度数が求まる. ✓ > > > > > btype.O <- matrix(c(202,35,179,6),2,2,byrow=T) btype.rsum <- apply(btype.O,1,sum) # 行合計 btype.csum <- apply(btype.O,2,sum) # 列合計 btype.E <- (btype.rsum %*% t(btype.csum))/sum(btype.O) btype.E [,1] [,2] [1,] 213.9739 23.02607 [2,] 167.0261 17.97393 > btype.X2 <- sum((btype.O-btype.E)^2/btype.E) > btype.X2; 1-pchisq(btype.X2,df=1) # 検定統計量,p 値 [1] 15.73193 [1] 7.298157e-05 ✏ # 期待度数の計算 ✒ ✑ 関数 chisq.test を利用する.引数 correct=TRUE を付けた場合(連続補正なし),上記 の手計算での結果に一致する.デフォルトでは Yates の連続補正統計量が用いられる. ✓ ✏ > chisq.test(btype.O,correct=FALSE) (中略) X-squared = 15.7319, df = 1, p-value = 7.298e-05 > chisq.test(btype.O) Pearson’s Chi-squared test with Yates’ continuity correction data: btype.O X-squared = 14.4455, df = 1, p-value = 0.0001443 ✒ ✑ 今週の R 関数 各関数の詳しい使い方はオンラインヘルプなどを参照のこと. 下線は省略したときの値を表す(バージョンにより異なることもある). • カイ二乗検定 chisq.test(x, correct, p, ...) 引数 – x : 観測度数(適合度検定の場合はベクトル,分割表解析の場合は行列) – correct : Yates の連続補正を行うかどうかを指定する(分割表解析の場合). correct=TRUE : Yates の連続補正を行う. correct=FALSE : Yates の連続補正を行わない. – p : 帰無仮説の比率(適合度検定の場合:和が1になるように指定する) 出力(主なもの) – statistic : カイ二乗統計量の値 – parameter : 自由度 – p.value : p 値(カイ二乗分布の上側確率) • 分割表解析(Fisher の正確検定法) ※カイ二乗近似が適切でない場合に用いる. fisher.test(x, alternative, ...) 引数 – x : 観測度数(行列) – alternative : 対立仮説の形を指定(2×2分割表の場合のみ). 帰無仮説 H0 : ϕ = 1(ϕ = p12 p21 /p11 p22 : オッズ比) alternative="two.sided" : 両側 (H1 : ϕ ̸= 1) alternative="greater" : 左側 (H1 : ϕ < 1) alternative="less" : 右側 (H1 : ϕ > 1) • その他 pchisq(q,df,...) : カイ二乗分布の累積分布関数の値(下側確率) (上側確率を求めるには 1-pchisq(...) とすればよい) – df: 自由度(省略不可) apply(X,1,sum) : 行ごとの和を求める(X: 行列) apply(X,2,sum) : 列ごとの和を求める
© Copyright 2025 ExpyDoc