「カイ二乗検定の臨界値、いちいち統計表を引かないとわからない」
こんな悩みを持ったことはありませんか?
自由度や有意水準が変わるたびに表をめくるのは手間ですよね。レポート上で判定基準を明示するときにも、書き写しのミスが起こりやすいです。
そんなときに使うのがExcelのCHISQ.INV関数です。
この記事では基本の書き方から実務での活用例まで解説します。
CHISQ.INV.RT関数との違いやCHISQ.DIST関数との逆関数関係も整理しました。旧CHIINV関数との互換性もあわせて紹介しますよ。
ExcelのCHISQ.INV関数とは?カイ二乗分布の逆関数
ExcelのCHISQ.INV関数(読み方: カイ・スクエア・インバース)は、カイ二乗(χ²)分布の左側累積確率から対応するカイ二乗値を逆算する関数です。
「CHISQ」は「Chi-Square(カイ二乗)」、「INV」は「Inverse(逆関数)」の略です。
CHISQ.DIST関数が「カイ二乗値 → 確率」を求めるのに対し、CHISQ.INV関数はその逆の「確率 → カイ二乗値」を求めます。
つまり2つの関数は逆関数の関係にあります。CHISQ.INVが返す値はカイ二乗分布上の「臨界値(critical value)」と呼ばれるものですね。
CHISQ.INV関数にできることをまとめると、次のとおりです。
- 適合度検定・独立性検定の臨界値を有意水準から求める
- 「累積確率p以下になるカイ二乗値はいくつか」を逆算する
- カイ二乗分布の信頼区間の下限を算出する
- 検定レポートに「自由度N・有意水準αの臨界値」を明示する
- 母分散の信頼区間の片側計算(標本分散の検定)に使う
NOTE
CHISQ.INV関数はExcel 2010以降で使えます。
Microsoft 365、Excel 2013〜2024のすべてのバージョンに対応しています。
Excel 2007以前では旧CHIINV関数(右側確率版)を使ってください。
CHISQ.INV関数の書き方(構文と引数)
基本構文
=CHISQ.INV(確率, 自由度)
カッコの中に、左側累積確率と自由度の2つを指定します。
CHISQ.DIST関数のような関数形式(TRUE/FALSE)の引数はありません。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 確率 | 必須 | 左側累積確率。0より大きく1未満の値を指定する |
| 自由度 | 必須 | カイ二乗分布の自由度。1以上の整数を指定する |
2つの引数はどちらも必須です。省略するとエラーになります。
TIP
自由度に小数を入れた場合は、整数部分だけが使われます。
たとえば3.7と指定しても、内部では3として計算されますよ。
CHISQ.INVが返す値の意味
CHISQ.INV関数は、指定した左側累積確率に対応するカイ二乗値を返します。
たとえば =CHISQ.INV(0.95, 1) は約 3.8415 を返します。
これは「自由度1のカイ二乗分布で、左側95%(つまり右側5%)に対応する値」という意味です。
有意水準5%の臨界値としておなじみの数値ですね。
TIP
確率は「左側」の累積確率を渡すのがポイントです。
有意水準5%の検定で臨界値を求めたいときは、0.05ではなく0.95(=1-0.05)を渡します。
ここを間違えると結果が大きく変わってしまうので注意してくださいね。
CHISQ.INV関数の基本的な使い方
ここからは具体的な確率と自由度を使って、CHISQ.INV関数の動きを確認していきましょう。
有意水準5%の臨界値を求める
検定でいちばんよく使う「有意水準5%(左側95%)」の臨界値を、自由度を変えながら求めてみます。
=CHISQ.INV(0.95, 1) → 3.8415
=CHISQ.INV(0.95, 2) → 5.9915
=CHISQ.INV(0.95, 3) → 7.8147
=CHISQ.INV(0.95, 5) → 11.0705
=CHISQ.INV(0.95, 10) → 18.3070
=CHISQ.INV(0.95, 20) → 31.4104
自由度が大きくなるほど、臨界値も大きくなっていきます。
これはカイ二乗分布のピークが自由度の増加とともに右にずれていくためですね。
有意水準を変えて臨界値を比較する
自由度5で固定し、有意水準(α)を変えたときの臨界値を比較してみます。
| 有意水準(α) | 渡す確率(1-α) | CHISQ.INVの結果 | 意味 |
|---|---|---|---|
| 10% | 0.90 | 9.2364 | ゆるい判定(弱めの検定) |
| 5% | 0.95 | 11.0705 | 標準的な判定 |
| 1% | 0.99 | 15.0863 | 厳しい判定(強い証拠が必要) |
| 0.1% | 0.999 | 20.5150 | 非常に厳しい判定 |
有意水準を厳しくする(αを小さくする)ほど、臨界値は大きくなります。
「より強い証拠がないと棄却しない」というイメージですね。
信頼区間の下限を求める
母分散や母標準偏差の信頼区間を計算するときにも、CHISQ.INV関数を使います。
たとえば95%信頼区間(両側)の下側臨界値を求めたいとき、確率は0.025(=(1-0.95)/2)を渡します。
=CHISQ.INV(0.025, 10) → 3.2470
この値は「自由度10のカイ二乗分布で、左側2.5%に対応するカイ二乗値」です。
母分散の信頼区間を求める式 (n-1)*s² / χ² の分母に使う臨界値の片方になります。
TIP
母分散の信頼区間(95%・両側)では、上側臨界値も必要です。
上側は=CHISQ.INV(0.975, n-1)または=CHISQ.INV.RT(0.025, n-1)で求められますよ。
CHISQ.DIST関数との逆関数関係を確認する
CHISQ.INV関数とCHISQ.DIST関数は逆関数の関係にあります。
次の数式で確認してみましょう。
=CHISQ.DIST(CHISQ.INV(0.95, 5), 5, TRUE)
結果は 0.95 です。CHISQ.INVで求めた値(11.0705)をCHISQ.DISTに戻すと、元の確率に戻ります。
「確率 → カイ二乗値 → 確率」のラウンドトリップが成立するわけですね。
逆方向のラウンドトリップも成立します。
=CHISQ.INV(CHISQ.DIST(7.8147, 3, TRUE), 3)
結果は 7.8147 に戻ります。
TIP
CHISQ.DISTとCHISQ.INVは表裏一体の関係です。
「カイ二乗値が手元にあって確率を知りたい」ならCHISQ.DIST、「確率(有意水準)から判定基準のカイ二乗値が欲しい」ならCHISQ.INVと使い分けてくださいね。
CHISQ.INV関数の実践的な使い方・応用例
適合度検定の臨界値を求めて判定する
「アンケートの5択に偏りがあるか」を判定する適合度検定に、CHISQ.INV関数を使う例を見てみましょう。
たとえば5択アンケート(回答合計100)の結果が次のとおりだったとします。
| 選択肢 | 観測度数 | 期待度数(均等なら) |
|---|---|---|
| A | 28 | 20 |
| B | 15 | 20 |
| C | 22 | 20 |
| D | 18 | 20 |
| E | 17 | 20 |
まずカイ二乗統計量(観測値と期待値のズレの合計)を計算します。
=(28-20)^2/20 + (15-20)^2/20 + (22-20)^2/20 + (18-20)^2/20 + (17-20)^2/20
結果は 5.3 です。自由度は「カテゴリ数 – 1 = 4」になります。
次に有意水準5%の臨界値をCHISQ.INV関数で求めます。
=CHISQ.INV(0.95, 4)
結果は約 9.4877 です。
カイ二乗統計量(5.3)が臨界値(9.4877)より小さいので、「回答に有意な偏りがあるとはいえない」と判断できますね。
統計表を引かなくても、1つの数式で判定基準が手に入るのがCHISQ.INV関数のうれしいところです。
TIP
観測値と期待値の範囲があるなら
=SUMPRODUCT((A1:A5-B1:B5)^2/B1:B5)の1式でカイ二乗統計量がまとめて計算できます。
p値で判定したい場合はCHISQ.DIST.RT関数を使ってくださいね。
独立性検定のレポート用テンプレート
「性別と商品の好みに関連があるか」のようなクロス集計表からの独立性検定でも、臨界値を活用できます。
レポートに判定基準を明記したいときに有効なパターンです。
次のクロス集計表を例にします。
| 商品A | 商品B | 合計 | |
|---|---|---|---|
| 男性 | 30 | 20 | 50 |
| 女性 | 15 | 35 | 50 |
| 合計 | 45 | 55 | 100 |
期待度数を求めて、カイ二乗統計量を計算すると約 9.0909 です。
自由度は (2-1) × (2-1) = 1 ですね。
=CHISQ.INV(0.95, 1)
結果は約 3.8415 です。
カイ二乗統計量(9.0909)が臨界値(3.8415)を大きく上回っています。よって「性別と商品の好みには有意な関連がある」と判断できますね。
このアプローチのメリットは、臨界値を事前に決めておけるところです。
「自由度1・有意水準5%の臨界値は3.8415」とレポートのテンプレートに書いておくと便利です。後から見返した人も判定基準がすぐわかりますよ。
検定の自由度別 臨界値テーブルを作る
実務でカイ二乗検定を頻繁に使うなら、CHISQ.INV関数で臨界値テーブルを作っておくと便利です。
| 自由度 | α=10%(0.90) | α=5%(0.95) | α=1%(0.99) |
|---|---|---|---|
| 1 | 2.7055 | 3.8415 | 6.6349 |
| 2 | 4.6052 | 5.9915 | 9.2103 |
| 3 | 6.2514 | 7.8147 | 11.3449 |
| 4 | 7.7794 | 9.4877 | 13.2767 |
| 5 | 9.2364 | 11.0705 | 15.0863 |
| 10 | 15.9872 | 18.3070 | 23.2093 |
| 20 | 28.4120 | 31.4104 | 37.5662 |
A列に自由度、B〜D列に確率(0.90, 0.95, 0.99)を割り当てます。=CHISQ.INV(B$1, $A2) のような複合参照式を入れれば、一括で表が完成しますよ。
プリントアウトして手元に置いておくと、検定のたびに統計表を探す手間がなくなります。
TIP
検定で使う臨界値の代表値を覚えておくと便利です。
自由度1・有意水準5% → 3.84、自由度1・有意水準1% → 6.63 はとくに頻出ですね。
母分散の信頼区間を求める
標本データから母分散の95%信頼区間を求めるときにも、CHISQ.INV関数が役に立ちます。
母分散の信頼区間(95%・両側)の式は次のとおりです。
下限: (n-1) × s² / CHISQ.INV(0.975, n-1)
上限: (n-1) × s² / CHISQ.INV(0.025, n-1)
たとえば標本サイズn=11、標本分散s²=4.5のとき、95%信頼区間は次のように計算します。
=10 * 4.5 / CHISQ.INV(0.975, 10) → 約 2.198(下限)
=10 * 4.5 / CHISQ.INV(0.025, 10) → 約 13.860(上限)
母分散の95%信頼区間は [2.20, 13.86] となります。
左側0.975が分母に来ると下限になり、左側0.025が分母に来ると上限になる点に注意してください。
TIP
母分散の信頼区間は「両側」で考えるので、95%なら片側2.5%ずつを差し引きます。
左側0.025(下端)と左側0.975(上端)の2つの臨界値を組み合わせて使う、と覚えておきましょう。
よくあるエラーと対処法
#NUM!エラー
CHISQ.INV関数で最もよく見るエラーです。以下の原因が考えられます。
| 原因 | 対策 |
|---|---|
| 確率が0以下または1以上 | 0より大きく1未満の値を指定する(0 < p < 1) |
| 自由度が1未満 | 自由度は1以上の整数を指定する |
| 自由度が0または負の値 | セルの式を見直して、正の値が入るように修正する |
確率の範囲(0より大きく1未満)と自由度の範囲(1以上)を覚えておけば対処は簡単です。
=CHISQ.INV(0, 3) → #NUM!エラー
=CHISQ.INV(1, 3) → #NUM!エラー
=CHISQ.INV(0.95, 0) → #NUM!エラー
=CHISQ.INV(0.95, 4) → 正常(約9.4877)
「ちょうど0%」や「ちょうど100%」に対応するカイ二乗値は数学的に定義できないため、エラーになります。
0.001や0.999のように、0と1を避けた値を指定してくださいね。
#VALUE!エラー
引数に数値以外の文字列を指定すると発生します。
=CHISQ.INV("abc", 3) → #VALUE!エラー
セル参照を使う場合は、参照先に数値が入っているかを確認してください。
空白セルや、見た目は数字でも文字列扱いになっているセルを参照するとエラーが出やすいです。
#NAME?エラー
Excel 2007以前で CHISQ.INV を使うと、ピリオド付きの関数名を認識できずに発生します。
=CHISQ.INV(0.95, 4) → #NAME?エラー(Excel 2007以前)
このときは旧 CHIINV 関数を使うか、Excelを2010以降にアップデートしてください。
旧CHIINV関数は「右側確率を渡す」仕様です。新CHISQ.INV(左側確率)とは引数の意味が逆になるので注意しましょう。
なお、関数名の「.(ピリオド)」を全角で入力した場合も#NAME?エラーになります。
半角ピリオドで入力されているかも合わせて確認してくださいね。
CHISQ.INVとCHISQ.INV.RTを混同して結果が逆になる
エラーは出ないけれど、結果が想定と違うパターンです。
有意水準5%の臨界値を求めるとき、CHISQ.INVには0.95を、CHISQ.INV.RTには0.05を渡します。
=CHISQ.INV(0.05, 4) → 0.7107(左側5%の値。検定の判定には使えない)
=CHISQ.INV(0.95, 4) → 9.4877(これが正しい有意水準5%の臨界値)
=CHISQ.INV.RT(0.05, 4) → 9.4877(同じく9.4877。直感的に書けるのが利点)
「左側の確率か、右側の確率か」を意識すれば混同を防げます。
迷ったら、有意水準αをそのまま渡せるCHISQ.INV.RTのほうが安全ですよ。
TIP
セルに
=1 - 0.05のように引き算で渡すと、左側確率と右側確率の対応関係を式で表現できます。=CHISQ.INV(1 - 0.05, 4)と書くと「有意水準5%」の意図が見えやすくなりますね。
CHISQ.INV.RT・CHISQ.DIST・CHISQ.TEST・旧CHIINV関数との違い・使い分け
カイ二乗分布関連関数の使い分け早見表
カイ二乗分布関連には、用途の違う関数がいくつかあります。
求めたい値や検定の種類に合わせて選びます。
| 関数 | 入力 | 出力 | 主な用途 |
|---|---|---|---|
| CHISQ.INV | 左側累積確率, 自由度 | カイ二乗値 | 左側臨界値の算出・信頼区間 |
| CHISQ.INV.RT | 右側累積確率, 自由度 | カイ二乗値 | 有意水準αから直接 検定臨界値 |
| CHISQ.DIST | カイ二乗値, 自由度, 関数形式 | 左側累積確率 or PDF | 確率の算出・PDF描画 |
| CHISQ.DIST.RT | カイ二乗値, 自由度 | 右側累積確率 | p値の直接計算 |
| CHISQ.TEST | 観測値範囲, 期待値範囲 | p値(直接) | 配列から一発でカイ二乗検定 |
実務シナリオ別の使い分けは次のとおりです。
- 有意水準αから臨界値を直接求めたい: CHISQ.INV.RT(αをそのまま渡せて直感的)
- 左側確率から臨界値を求めたい / 信頼区間の下限: CHISQ.INV
- カイ二乗値からp値を求めたい: CHISQ.DIST.RT または
1 - CHISQ.DIST(...) - 観測値・期待値の範囲から直接検定したい: CHISQ.TEST
CHISQ.INVとCHISQ.INV.RTの関係
CHISQ.INVは「左側確率」を、CHISQ.INV.RTは「右側確率」を渡します。
数学的には次の関係が成り立ちます。
CHISQ.INV(1 - α, df) = CHISQ.INV.RT(α, df)
具体例で確認しましょう。
=CHISQ.INV(0.95, 4) → 9.4877
=CHISQ.INV.RT(0.05, 4) → 9.4877
どちらを使っても同じ臨界値が得られます。
使い分けのポイントは次のとおりです。
- 検定の臨界値: CHISQ.INV.RT(有意水準αをそのまま渡せる)
- 累積確率テーブル作成: CHISQ.INV(0.1, 0.5, 0.9… と並べやすい)
- 他の逆関数(NORM.INV、T.INV)と統一: CHISQ.INV(すべて左側確率を渡す統一感)
- 信頼区間の片側(下限): CHISQ.INV
旧CHIINV関数との互換性
旧CHIINV関数(Excel 2007以前)は、新CHISQ.INV関数とは仕様が逆です。
移行時には注意が必要ですよ。
| 項目 | CHISQ.INV(新・左側) | CHIINV(旧・右側) |
|---|---|---|
| 渡す確率 | 左側累積確率 | 右側累積確率 |
| 入力例(5%臨界値) | 0.95 | 0.05 |
| 結果 | 同じカイ二乗値 | 同じカイ二乗値 |
| 導入バージョン | Excel 2010 | Excel 2003以前 |
旧関数の代替対応は次のとおりです。
| 旧書き方 | 新書き方(同じ結果) |
|---|---|
| =CHIINV(0.05, 4) | =CHISQ.INV.RT(0.05, 4) |
| =CHIINV(0.05, 4) | =CHISQ.INV(0.95, 4) |
| =CHIDIST(x, df) | =CHISQ.DIST.RT(x, df) |
| =CHITEST(actual, expected) | =CHISQ.TEST(actual, expected) |
旧CHIINV関数で作られたブックは、計算結果を変えないかぎり書き換える必要はありません。
新規で数式を作るときはCHISQ.INV関数群を使ってくださいね。
TIP
旧CHIINVは「右側」、新CHISQ.INVは「左側」と意味が逆です。
旧CHIINV(0.05, 4) と書きたいなら、新関数では CHISQ.INV.RT(0.05, 4) もしくは CHISQ.INV(0.95, 4) になります。
移行時はとくに気をつけてください。
関連関数の一覧
| 関数 | 説明 |
|---|---|
| CHISQ.INV | カイ二乗分布の左側逆関数(確率→x) |
| CHISQ.INV.RT | カイ二乗分布の右側逆関数(確率→x) |
| CHISQ.DIST | カイ二乗分布の左側累積確率 or PDF |
| CHISQ.DIST.RT | カイ二乗分布の右側累積確率(p値) |
| CHISQ.TEST | データ範囲から直接カイ二乗検定のp値 |
| CHIINV | CHISQ.INV.RTの旧名(右側のみ) |
| CHIDIST | CHISQ.DIST.RTの旧名(右側のみ) |
| T.DIST | t分布の左側確率 |
| F.DIST | F分布の左側確率 |
| VAR.S | 標本分散(信頼区間で使う) |
| STDEV.S | 標本標準偏差 |
まとめ
CHISQ.INV関数は、カイ二乗(χ²)分布の左側累積確率からカイ二乗値(臨界値)を逆算する関数です。
この記事のポイント
- 構文は
=CHISQ.INV(確率, 自由度)の2つの引数を指定する - 確率には左側累積確率を渡す。有意水準5%の臨界値が欲しいなら 1-0.05 = 0.95 を指定
- 自由度1・有意水準5% → 3.8415、自由度4・有意水準5% → 9.4877 が代表的な臨界値
- CHISQ.DIST関数とは逆関数の関係。「確率 → カイ二乗値 → 確率」のラウンドトリップが成立する
- CHISQ.INV.RTは右側確率を渡す姉妹関数。有意水準αをそのまま渡せるので検定では直感的
- 適合度検定・独立性検定の臨界値、母分散の信頼区間で活躍する
- 確率に0や1を渡すと#NUM!エラー。0より大きく1未満の値を指定する
- 旧CHIINV関数は右側確率を渡す仕様なので、新CHISQ.INV(左側)と混同しないよう注意
カイ二乗分布関連の関数は使い分けが大事です。
あわせて以下の関数も覚えておくと、検定作業がぐっと楽になりますよ。
