「3つの広告クリエイティブで、どれか1つでも他と差があるかを検定したい」「重回帰の結果が偶然じゃないか確かめたい」といった場面で活躍するのが FDIST関数 です。
ただ、F分布という言葉だけで身構えてしまう方も多いはずです。さらに新関数 F.DIST.RT との違いや、引数の自由度の指定方法でつまずく方も少なくありません。
この記事では、FDIST関数の構文から、分散分析(ANOVA)でのp値計算の実例、新関数との関係、関連関数の使い分けまでをまとめて整理します。
ExcelのFDIST関数とは?
ExcelのFDIST関数(読み方:エフディスト)は、F分布の右側確率(p値)を返す関数です。関数名は「F–Distribution(F分布)」の略で、統計学者ロナルド・フィッシャーの名にちなんだ分布です。
ざっくり言うと、ある F値 と2つの 自由度 を渡すと、「F値がそれ以上に大きくなる確率」を返してくれる関数です。p値が小さいほど「観測されたF値は偶然では起きにくい」と言えます。慣例的に p値 < 0.05 で「統計的に有意」 と判定します。
FDIST関数は、Excel 2007以前から提供されている 旧式の関数です。Excel 2010以降では「互換性関数」のグループに分類されています。後継として F.DIST.RT関数(ドット入り、RT=Right Tailed)が用意されていますが、FDIST関数も後方互換性のために引き続き使えます。
NOTE
「互換性関数」は古いブックでも問題なく動くように維持されている関数群です。新規作成のワークブックでは新関数(F.DIST.RT)が推奨されますが、既存のテンプレートやマクロでFDISTを見かけても、結果は新関数とまったく同じです。
FDIST関数の書き方(構文と引数)
FDIST関数の構文は次のとおりです。
=FDIST(x, deg_freedom1, deg_freedom2)
引数は3つで、すべて必須です。
| 引数 | 必須 | 説明 |
|---|---|---|
| x | 必須 | 評価したいF値(0以上の数値) |
| deg_freedom1 | 必須 | 分子の自由度(1以上の整数。グループ間自由度) |
| deg_freedom2 | 必須 | 分母の自由度(1以上の整数。グループ内自由度) |
戻り値は0以上1以下のp値です。「F値が x より大きくなる確率」、つまり 右側確率 P(F > x) を表します。
TIP
自由度が小数で渡された場合は整数部分のみが使われます(小数部分は切り捨て)。ANOVA で自由度を計算する際は、
(グループ数 - 1)と(全体サンプル数 - グループ数)という整数になるので、通常は気にする必要はありません。
F分布と右側確率のイメージ
F分布は「2つの分散の比」が従う分布で、必ず0以上の値を取り、右に長い裾を持つ非対称な形をしています。F値が大きくなるほど「グループ間のばらつきがグループ内のばらつきより明らかに大きい」ことを意味します。
FDIST関数は、その大きいF値が 偶然出る確率 を返します。実務的には次のように使います。
- 計算されたF値とFDISTのp値を比較する
- p値が0.05未満 → 「グループ間に有意な差がある」と結論づける
- p値が0.05以上 → 「グループ間に差があるとは言えない」と判断する
実務例1:ANOVA(一元配置分散分析)でp値を求める
3つの広告クリエイティブA・B・Cで、それぞれ5日間ずつコンバージョン率(%)を計測したとします。「どれか1つでも他と差があるか」を一元配置分散分析(ANOVA)で検定してみましょう。
| 日 | A群(%) | B群(%) | C群(%) |
|---|---|---|---|
| 1 | 2.1 | 2.8 | 3.4 |
| 2 | 2.3 | 3.1 | 3.6 |
| 3 | 1.9 | 2.6 | 3.2 |
| 4 | 2.5 | 2.9 | 3.5 |
| 5 | 2.2 | 3.2 | 3.7 |
ANOVAの分散分析表からF値が F = 35.2、自由度が 分子=2(グループ数 – 1)、分母=12(全体サンプル数 – グループ数)と算出されたとします。このF値のp値をFDISTで求めます。
=FDIST(35.2, 2, 12)
このサンプルでは、p値はおよそ 0.0000089 と極めて小さい値が返ります。0.05 を大きく下回っているので、「3群の平均値に少なくとも1つは有意な差がある」と結論づけられます。
NOTE
「分析ツール」アドインの「分散分析: 一元配置」を使えば、F値・自由度・p値・F境界値が自動計算された分散分析表が出力されます。FDIST関数は、分析ツールを使わずに手計算したF値を検定したい場合や、自動化マクロでp値だけ取得したい場合に重宝します。
実務例2:回帰分析の有意性検定にF値を使う
重回帰分析の結果でも、「モデル全体が意味のある説明力を持っているか」をF検定で判断します。Excelの「回帰分析」アドインを実行すると、分散分析表に 観測されたF値 と 有意 F が出力されます。
仮にF値が F = 18.7、回帰の自由度が 3(説明変数の数)、残差の自由度が 26(サンプル数 – 説明変数の数 – 1)だったとしましょう。
=FDIST(18.7, 3, 26)
このサンプルでは、p値はおよそ 0.0000016 となります。0.05 を大きく下回るため「回帰モデル全体は統計的に有意」と結論づけられます。少なくとも1つの説明変数は目的変数の予測に貢献していると言えます。
TIP
回帰分析の出力に直接「有意 F」が表示されているなら、わざわざFDIST関数で再計算する必要はありません。FDISTは、F値だけ手元にある状況や、シミュレーションでF値を多数生成した結果を一括検定するときに便利です。
F.DIST.RT関数(新関数)との違い・使い分け
Excel 2010以降では、後継の F.DIST.RT関数(ドット入り、Right Tailed)が用意されています。
| 項目 | FDIST | F.DIST.RT |
|---|---|---|
| 導入時期 | Excel 2007以前から | Excel 2010以降 |
| 構文 | FDIST(x, deg_freedom1, deg_freedom2) | F.DIST.RT(x, deg_freedom1, deg_freedom2) |
| 計算結果 | 同一 | 同一 |
| 関数の分類 | 互換性関数 | 統計関数 |
引数の数・順番・意味すべて同じで、計算結果も完全一致します。FDIST(x, d1, d2) = F.DIST.RT(x, d1, d2) という関係です。
使い分けの実務指針
- 古いExcel環境(2007以前)と共有する → FDIST
- 自分専用または新しい環境で使う → F.DIST.RT
- 既存ブックの数式を継承する → そのまま変更不要
Microsoft公式は新関数(F.DIST.RT)を推奨していますが、FDIST が将来削除される予定もないので、安心して使えます。既存のテンプレートやマクロが FDIST で組まれていることはまだ多く、業務で見かける機会は今後も残ります。
NOTE
Excel 2010以降には、左側確率(累積確率)を返す F.DIST関数(RT なし)も別途追加されています。FDIST/F.DIST.RT が右側確率なのに対して、F.DIST(x, d1, d2, TRUE) は左側確率(CDF)を返します。p値計算には FDIST または F.DIST.RT を使うと覚えておきましょう。
よくあるエラーと対処法
| エラー | 原因 | 対処法 |
|---|---|---|
#VALUE! | x や自由度に数値以外が入っている | すべて数値で指定する |
#NUM! | x が負(x < 0)/自由度が1未満/x が 10^10 以上 | x は0以上、自由度は1以上の整数を指定 |
#NAME? | 関数名のスペルミス | FDIST の綴りを確認 |
特に多いのが、F値を間違って負の数で渡してしまうケースです。F値は分散の比なので必ず0以上になります。マイナス値が出ている時点で、F値の計算式そのものを見直しましょう。
また、サンプルサイズが極端に大きいシミュレーションなどで x >= 10^10 となるケースもエラーになりますが、実務でこの上限に達することはほぼありません。
関連関数:FDIST・FINV・F.DIST.RT・F.INV.RT の関係
F分布まわりには、p値とF値を相互に変換する関数が4つあります。次の表で全体像を整理しておきましょう。
| 関数 | 入力 | 出力 | 役割 |
|---|---|---|---|
| FDIST | F値, 自由度1, 自由度2 | p値(右側確率) | F値から有意性を判定 |
| FINV | 確率, 自由度1, 自由度2 | F値 | 棄却域の臨界F値を求める(旧関数) |
| F.DIST.RT | F値, 自由度1, 自由度2 | p値(右側確率) | FDISTの新関数版 |
| F.INV.RT | 確率, 自由度1, 自由度2 | F値 | FINVの新関数版 |
要するに、計算したF値が有意かを判定したいなら FDIST/F.DIST.RT、α=0.05 で「これ以上のF値なら有意」という臨界値を逆算したいなら FINV関数/F.INV.RT を使います。両者を組み合わせると、F検定の流れが Excel だけで完結します。
事前に等分散かどうかを判定したい場面では、F検定そのものを返してくれる F.TEST 関数も便利です。t検定の文脈で等分散・不等分散を選び分けるときは TTEST関数 と組み合わせて使うと、検定の流れが一気に整理できます。
まとめ
ExcelのFDIST関数は、F分布のp値を一発で計算できる便利な互換性関数です。要点を整理すると次のとおりです。
- 構文:
=FDIST(x, deg_freedom1, deg_freedom2) - 戻り値はF分布の 右側確率 P(F > x)
- 分散分析(ANOVA)や回帰分析の有意性検定で使う
- 自由度1は 分子(グループ間)、自由度2は 分母(グループ内)
- 新関数 F.DIST.RT と計算結果は完全に同一。新規ブックでは F.DIST.RT を推奨
p値が0.05未満なら「グループ間に有意な差がある」「モデルは有意」と結論づけられます。計算したF値の意味を読み解くには、対になる FINV関数 で臨界F値を求めて比較するのが定石です。
合わせて TTEST関数 や F.TEST 関数を使えば、t検定とF検定の両方をExcelだけで自在にこなせるようになります。
