「アンケートの回答に偏りがあるのか、それとも単なるばらつきなのか?」
こんな悩みを持ったことはありませんか?
選択肢ごとの回答数を眺めていても「なんとなく多い・少ない」ぐらいしか分からず、説得力のある報告につながらないんですよね。
そんなときに使うのがCHISQ.DIST関数です。
この記事では基本の書き方から実務での活用例まで解説します。
CHISQ.DIST.RT関数や旧CHIDIST関数との使い分け、適合度検定や独立性検定でのp値計算もあわせて整理しました。
CHISQ.DIST関数とは?カイ二乗分布の確率を返す関数
CHISQ.DIST関数(読み方: カイ・スクエア・ディスト)は、カイ二乗(χ²)分布にもとづく確率を返す関数です。
「CHISQ」は「Chi-Square(カイ二乗)」、「DIST」は「Distribution(分布)」の略です。
カイ二乗分布は0以上の値しか取らない、右に裾を引く非対称な分布です。
標準正規分布に従う独立な変数の二乗和がどんな値になりやすいかを表した分布で、適合度検定や独立性検定など「カテゴリデータの偏り」を扱う検定の土台になっています。
釣り鐘型で左右対称なt分布とは形がまったく違う点が特徴です。
CHISQ.DIST関数では、cumulative引数を切り替えることで次の2つの値を求められます。
- 累積分布関数(CDF): 「ある値以下になる確率」を返す。cumulative = TRUE
- 確率密度関数(PDF): 「ある値における確率密度」を返す。cumulative = FALSE
実務で使う場面のほとんどはCDF(累積分布関数)です。
カイ二乗検定のp値を計算したり、臨界値を確認したりするときに活躍します。
CHISQ.DIST関数にできることをまとめると、次のとおりです。
- カイ二乗値の左側累積確率を計算する(cumulative = TRUE)
- カイ二乗分布の確率密度を求めてグラフを描画する(cumulative = FALSE)
- アンケート回答に統計的な偏りがあるかを判定する(適合度検定)
- 2つのカテゴリ変数に関連があるかを調べる(独立性検定)
- 製造ラインの不良品分布が均一かを確認する(品質管理)
NOTE
CHISQ.DIST関数はExcel 2010以降で使えます。
Microsoft 365、Excel 2013〜2024のすべてのバージョンに対応しています。
Excel 2007以前では旧CHIDIST関数(右側確率のみ)を使ってください。
CHISQ.DIST関数の書き方(構文と引数)
基本構文
=CHISQ.DIST(x, 自由度, 関数形式)
カッコの中に、評価したい数値、自由度、出力の形式を指定します。
F.DIST関数とは違って自由度は1つだけ渡すのが特徴です。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| x | 必須 | 確率を求めたい数値(カイ二乗値)。0以上の値を指定する |
| 自由度 | 必須 | カイ二乗分布の自由度。1以上の整数を指定する |
| 関数形式 | 必須 | TRUEで累積分布関数(CDF)、FALSEで確率密度関数(PDF) |
3つの引数はすべて必須です。省略するとエラーになります。
TIP
自由度に小数を入れると、整数部分だけが使われます。
たとえば3.7と指定しても、内部では3として計算されます。
累積分布関数(CDF)と確率密度関数(PDF)の違い
ちょっとややこしく見えますが、やっていることはシンプルです。
- CDF(TRUE): 「x以下になる確率」を返す。0〜1の値になる
- PDF(FALSE): 「xにおける確率密度」を返す。グラフ描画で使う
たとえば自由度1で x = 3.84 のとき、CDFは「3.84以下になる確率(約0.9500)」を返します。
PDFは「x = 3.84 における曲線の高さ(約0.0296)」を返します。
TIP
カイ二乗分布は0以上の値しか取りません。
xに負の値を入れると#NUM!エラーになるので注意してください。
CHISQ.DIST関数の基本的な使い方
ここからは具体的なカイ二乗値と自由度を使って、CHISQ.DIST関数の動きを確認していきましょう。
「カイ二乗値以下になる確率」を求める(CDF)
自由度1のカイ二乗分布で、3.84以下になる確率を求めます。
=CHISQ.DIST(3.84, 1, TRUE)
結果は約 0.9500(95.0%)です。カイ二乗値が3.84以下に収まる確率は約95%ということになります。
逆に、3.84を超える確率は約5%です。
この3.84は自由度1・有意水準5%の右側臨界値として有名な値です。
別のカイ二乗値も試してみましょう。
=CHISQ.DIST(2, 3, TRUE)
結果は約 0.4276(42.76%)です。
自由度3で2以下になる確率は半分弱、というイメージですね。
=CHISQ.DIST(0, 3, TRUE)
結果は 0(0%)です。
カイ二乗分布は0以上の値しか取らないため、0以下になる確率はちょうど0になります。
自由度を変えて確認する
同じカイ二乗値(x=5)で、自由度を変えるとどうなるか見てみましょう。
=CHISQ.DIST(5, 2, TRUE) → 約 0.9179
=CHISQ.DIST(5, 3, TRUE) → 約 0.8282
=CHISQ.DIST(5, 5, TRUE) → 約 0.5841
=CHISQ.DIST(5, 10, TRUE) → 約 0.1088
自由度が大きくなるほど、カイ二乗分布のピークは右にずれていきます。
そのため同じx=5でも、自由度が大きいほうが「5以下になる確率」が小さくなります。
確率密度関数(PDF)の値を確認する
=CHISQ.DIST(3.84, 1, FALSE)
結果は約 0.0296 です。x = 3.84 における曲線の高さです。
=CHISQ.DIST(2, 3, FALSE)
結果は約 0.2076 です。
PDFの値そのものは「確率」ではないので、グラフ描画やカーブの比較に使います。
TIP
CDFの結果が0.95より大きいなら、そのカイ二乗値は「右側5%の棄却域」に入っていることになります。
カイ二乗検定で帰無仮説を棄却できる目安として使えますよ。
TRUEとFALSEを並べて比較する
自由度3のカイ二乗分布で、xを変えたときの結果を並べてみました。
| x | TRUE(累積確率) | FALSE(確率密度) |
|---|---|---|
| 1 | 0.1987(19.9%) | 0.2420 |
| 2 | 0.4276(42.8%) | 0.2076 |
| 3 | 0.6084(60.8%) | 0.1542 |
| 5 | 0.8282(82.8%) | 0.0695 |
| 7.815 | 0.9500(95.0%) | 0.0207 |
TRUEの列はxが大きくなるほど1に近づいていきます。
FALSEの列はxが小さいほど大きく、離れるほど小さくなります。
0付近で密度が高いのがカイ二乗分布の特徴です。
CHISQ.DIST関数の実践的な使い方・応用例
適合度検定でアンケートの偏りを判定する
「5つの選択肢に均等に回答が分かれているか」を統計的に判定するのが適合度検定です。
CHISQ.DIST関数を使えば、p値を手計算なしで求められます。
たとえば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」になります。
次にp値を求めます。
「カイ二乗値5.3以上が偶然で起こる確率」なので、右側確率を使います。
=1 - CHISQ.DIST(5.3, 4, TRUE)
結果は約 0.2578(25.78%)です。
有意水準5%(0.05)よりはるかに大きいので、「回答に有意な偏りがあるとはいえない」と判断できます。
同じ計算はCHISQ.DIST.RT関数で一発で求められます。
=CHISQ.DIST.RT(5.3, 4)
こちらも約 0.2578 で、結果は同じです。
TIP
観測値と期待値の範囲があるなら
=SUMPRODUCT((A1:A5-B1:B5)^2/B1:B5)の1式でカイ二乗統計量がまとめて計算できますよ。
独立性検定で2つのカテゴリの関連を調べる
「性別と商品の好みに関連はあるか」のように、2つのカテゴリ変数の関連を調べるのが独立性検定です。
たとえば、次のクロス集計表があるとします。
| 商品A | 商品B | 合計 | |
|---|---|---|---|
| 男性 | 30 | 20 | 50 |
| 女性 | 15 | 35 | 50 |
| 合計 | 45 | 55 | 100 |
期待度数は「行合計 × 列合計 ÷ 総合計」で求めます。
たとえば男性×商品Aの期待度数は 50 × 45 ÷ 100 = 22.5 です。
同様に計算すると、4セルの期待度数は 22.5 / 27.5 / 22.5 / 27.5 になります。
カイ二乗統計量を計算します。
=(30-22.5)^2/22.5 + (20-27.5)^2/27.5 + (15-22.5)^2/22.5 + (35-27.5)^2/27.5
結果は約 9.0909 です。自由度は (2-1) × (2-1) = 1 です。
=1 - CHISQ.DIST(9.0909, 1, TRUE)
結果は約 0.0026(0.26%)です。
有意水準5%を大きく下回るので、「性別と商品の好みには有意な関連がある」と判断できますね。
製造ラインの不良品分布が均一か確認する
品質管理の現場でも、CHISQ.DIST関数は活躍します。
月〜金の不良品数が {8, 12, 6, 14, 10} で、本来は均等に各10個ずつ発生する想定だったとします。
=(8-10)^2/10 + (12-10)^2/10 + (6-10)^2/10 + (14-10)^2/10 + (10-10)^2/10
結果は 4.0 です。自由度は 5-1 = 4 です。
=CHISQ.DIST.RT(4.0, 4)
結果は約 0.4060(40.60%)です。
有意水準5%よりずっと大きいので、「曜日による偏りがあるとはいえない」と結論できます。
特定の曜日に不良品が集中しているわけではなさそうですね。
自由度の決め方早見表
実務でカイ二乗検定を使うとき、自由度の決め方は次のように整理できます。
| 検定の種類 | 自由度の式 | 例 |
|---|---|---|
| 適合度検定 | カテゴリ数 – 1 | 5択アンケート → 4 |
| 独立性検定(クロス集計) | (行数 – 1) × (列数 – 1) | 2×2 → 1、3×4 → 6 |
| 等質性検定 | (行数 – 1) × (列数 – 1) | 独立性検定と同じ |
| 分散の検定(1標本) | n – 1 | n=20 → 19 |
TIP
適合度検定や独立性検定の前提として、すべてのセルの期待度数が5以上ある必要があります。
5未満のセルがある場合はカテゴリを統合するか、フィッシャーの正確検定への切り替えを検討してくださいね。
よくあるエラーと対処法
#NUM!エラー
CHISQ.DIST関数で最もよく見るエラーです。以下の原因が考えられます。
| 原因 | 対策 |
|---|---|
| xに負の値を指定した | カイ二乗分布は0以上のみ。xに正の値を指定する |
| 自由度が1未満 | 自由度は1以上の整数を指定する |
| 自由度が0または負の値 | セルの式を見直して、正の値が入るように修正する |
カイ二乗分布が0以上の値しか取らないことと、自由度が1以上であることを覚えておけば対処は簡単です。
=CHISQ.DIST(-1, 3, TRUE) → #NUM!エラー
=CHISQ.DIST(2, 0, TRUE) → #NUM!エラー
=CHISQ.DIST(2, 3, TRUE) → 正常(約0.4276)
#VALUE!エラー
引数に数値以外の文字列を指定すると発生します。
=CHISQ.DIST("abc", 3, TRUE) → #VALUE!エラー
セル参照を使う場合は、参照先に数値が入っているかを確認してください。
空白セルが文字列扱いになっている場合もエラーが出やすいです。
#NAME?エラー
Excel 2007以前で CHISQ.DIST を使うと、ピリオド付きの関数名を認識できずに発生します。
=CHISQ.DIST(2, 3, TRUE) → #NAME?エラー(Excel 2007以前)
このときは旧 CHIDIST 関数を使うか、Excelを2010以降にアップデートしてください。
旧CHIDIST関数は「右側確率のみ」を返す仕様で、CHISQ.DIST(TRUE)(左側)とは意味が逆になるので注意してください。
なお、関数名の「.(ピリオド)」を全角で入力した場合も#NAME?エラーになります。半角ピリオドで入力されているかも合わせて確認してください。
TIP
「関数形式」の引数を忘れると引数不足でエラーになります。
CDFを求めるならTRUE、PDFを求めるならFALSEを必ず指定してください。
CHISQ.DIST.RT・CHISQ.INV・CHISQ.TEST・旧CHIDIST関数との違い・使い分け
カイ二乗分布関連関数の使い分け早見表
カイ二乗分布関連には、用途の違う関数がいくつかあります。
求めたい値や検定の種類に合わせて選びます。
| 関数 | 返す値 | cumulative引数 | 主な用途 |
|---|---|---|---|
| CHISQ.DIST | x以下になる累積確率 または PDF | あり(TRUE/FALSE) | 左側確率・PDF描画 |
| CHISQ.DIST.RT | x以上になる確率(右側) | なし | 検定のp値計算 |
| CHISQ.INV | 累積確率 → x(左側の逆関数) | なし | 左側臨界値の算出 |
| CHISQ.INV.RT | 確率 → x(右側の逆関数) | なし | 有意水準から臨界値を直接求める |
| CHISQ.TEST | データ範囲から直接カイ二乗検定のp値(両側) | なし | 観測値・期待値の配列から一発で計算 |
実務シナリオ別の使い分けは次のとおりです。
- 検定のp値を素早く求めたい: CHISQ.DIST.RT
- 有意水準から臨界値を逆算したい: CHISQ.INV.RT(例: 自由度4・5%水準なら約9.49)
- 観測値と期待値の範囲から直接検定したい: CHISQ.TEST
- カイ二乗分布のカーブをグラフにしたい: CHISQ.DIST(x, df, FALSE)
TIP
CHISQ.DIST.RTを使うと
=1 - CHISQ.DIST(x, df, TRUE)と同じ結果が一発で得られます。
p値を求めるときはCHISQ.DIST.RTのほうがシンプルですよ。
旧CHIDIST関数との互換性
旧CHIDIST関数(Excel 2007以前)は、新CHISQ.DIST関数とは仕様がかなり違います。
移行時には注意が必要です。
| 項目 | CHISQ.DIST(新) | CHIDIST(旧) |
|---|---|---|
| 引数 | (x, 自由度, 関数形式) | (x, 自由度) |
| 返す確率 | 左側累積 または PDF | 右側累積のみ |
| cumulative指定 | あり(TRUE/FALSE) | なし |
| 導入バージョン | Excel 2010 | Excel 2003以前 |
旧関数の代替は次のとおりです。
| 旧書き方 | 新書き方 |
|---|---|
| =CHIDIST(x, df) | =CHISQ.DIST.RT(x, df) |
| =CHIDIST(x, df) | =1 – CHISQ.DIST(x, df, TRUE) |
| =CHIINV(p, df) | =CHISQ.INV.RT(p, df) |
| =CHITEST(actual, expected) | =CHISQ.TEST(actual, expected) |
旧CHIDIST関数で作られたブックは、計算結果を変えないかぎり書き換える必要はありません。
新規で数式を作るときはCHISQ.DIST関数群を使いましょう。
TIP
旧CHIDISTは「右側」、新CHISQ.DIST(TRUE)は「左側」と意味が逆になります。
混同して使うと検定結果がひっくり返るので、移行時はとくに注意してください。
関連関数の一覧
| 関数 | 説明 |
|---|---|
| CHISQ.DIST | カイ二乗分布の左側累積確率または確率密度 |
| CHISQ.DIST.RT | カイ二乗分布の右側累積確率 |
| CHISQ.INV | カイ二乗分布の逆関数(確率→x)。左側 |
| CHISQ.INV.RT | カイ二乗分布の逆関数。右側 |
| CHISQ.TEST | データ範囲から直接カイ二乗検定のp値 |
| CHIDIST | CHISQ.DIST.RTの旧名(右側のみ) |
| T.DIST | t分布の左側確率(少サンプルの平均差検定) |
| F.DIST | F分布の左側確率(分散比の検定) |
| T.TEST | t検定のp値を直接計算 |
| F.TEST | F検定のp値を直接計算 |
| VAR.S | 標本分散 |
| STDEV.S | 標本標準偏差 |
| AVERAGE | 標本平均 |
まとめ
CHISQ.DIST関数は、カイ二乗(χ²)分布にもとづいて左側累積確率または確率密度を返す関数です。
この記事のポイント
- 構文は
=CHISQ.DIST(x, 自由度, 関数形式)の3つの引数を指定する - カイ二乗分布は0以上のみで右に裾を引く非対称分布。カテゴリデータの偏りを扱う検定で使う
- 関数形式をTRUEにすると累積分布関数(CDF)、FALSEにすると確率密度関数(PDF)
- 検定のp値は右側確率なので、
=1 - CHISQ.DIST(...)または CHISQ.DIST.RT を使う - 自由度は適合度検定なら「カテゴリ数 – 1」、独立性検定なら「(行 – 1) × (列 – 1)」
- 適合度検定・独立性検定・品質管理の偏り判定で活躍する
- 期待度数が5未満のセルがあると検定の精度が落ちるため、カテゴリ統合や別検定への切り替えを検討する
- 旧CHIDIST関数は右側を返すので、新CHISQ.DIST(TRUE)(左側)と仕様が異なる点に注意
CHISQ.DIST関数の使い方がわかったら、以下の関数もあわせて覚えてみてください。
データ分析の幅が広がりますよ。
