「有意水準5%の臨界値を求めたいけど、F.INVだと確率を1から引かないといけないの?」。F検定のたびにこの変換で迷う方は多いですよね。
有意水準をそのまま渡せたら、数式がシンプルになってミスも減らせます。
そんなときに使うのがF.INV.RT関数です。この記事ではGoogleスプレッドシートでのF.INV.RT関数の使い方を、基本構文から実務活用まで解説します。F.INV関数との違いやFINV(旧関数)との関係もあわせて紹介しますよ。
スプレッドシートのF.INV.RT関数とは
F.INV.RT関数(読み方: エフ・インバース・アールティー関数)は、F分布の右側確率からF値を逆算する関数です。
「INV」は「Inverse(逆)」、「RT」は「Right-Tailed(右側)」の略です。
たとえば「自由度(3, 20)のF分布で、右側5%に対応するF値はいくつか」を1つの数式で求められます。有意水準をそのまま引数に渡せるので、検定の臨界値を求めるときに直感的に使えますよ。
F.INV.RT関数にできることをまとめると、次のとおりです。
- 有意水準(右側確率)からF値を直接逆算する
- F検定の臨界値を求める
- 分散分析(ANOVA)の棄却値を算出する
- F分布表を引く手間をなくす
NOTE
F.INV.RT関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、動作は同じです。
基本構文と3つの引数
=F.INV.RT(確率, 自由度1, 自由度2)
カッコの中に3つの引数を指定します。
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 確率(probability) | 必須 | F分布の右側確率。0より大きく1より小さい値 |
| 自由度1(degrees_freedom1) | 必須 | 分子の自由度。1以上の正の整数 |
| 自由度2(degrees_freedom2) | 必須 | 分母の自由度。1以上の正の整数 |
TIP
自由度(じゆうど)とは、データから自由に値を決められる個数のことです。F検定では「サンプルサイズ – 1」で求めます。分散分析では分子が「グループ数 – 1」、分母が「全データ数 – グループ数」です。小数を渡した場合は整数部分だけが使われますよ。
F.INV関数との違い(左側 vs 右側)
F.INV関数は左側累積確率を、F.INV.RT関数は右側確率を引数に取ります。同じ臨界値を求める場合でも、渡す確率の値が異なります。
=F.INV(0.95, 3, 20) → 約3.10(左側95%のF値)
=F.INV.RT(0.05, 3, 20) → 約3.10(右側5%のF値)
どちらも同じ結果ですが、F.INV.RTは有意水準(0.05)をそのまま渡せます。「1から引く」計算が不要なので、検定のときはF.INV.RTのほうがミスしにくいですよ。
等価式で表すと、次の関係になります。
F.INV.RT(p, df1, df2) = F.INV(1 - p, df1, df2)
FINV(旧関数名)との関係
GoogleスプレッドシートにはFINVという関数もあります。FINVはF.INV.RTと同じ動作をします。
=FINV(0.05, 3, 20) → 約3.10
=F.INV.RT(0.05, 3, 20) → 約3.10(同じ結果)
FINVは旧バージョンとの互換性のために残されている関数です。新しく数式を書くときはF.INV.RTを使いましょう。
F.INV.RT関数の基本的な使い方
まずはシンプルな例で動きを確認してみましょう。自由度(3, 20)のF分布を使います。
有意水準5%の臨界値を求める
=F.INV.RT(0.05, 3, 20)
結果は約3.10です。「自由度(3, 20)のF分布で、右側5%に位置するF値は3.10」という意味です。計算したF値がこの臨界値を超えていれば、有意水準5%で「統計的に有意」と判断します。
有意水準を変えた場合の比較
有意水準を変えるとF値がどう変わるか見てみましょう。
| 有意水準(右側確率) | F.INV.RT(確率, 3, 20) | 意味 |
|---|---|---|
| 0.10 | 2.3801 | 有意水準10%の臨界値 |
| 0.05 | 3.0984 | 有意水準5%の臨界値 |
| 0.025 | 3.8587 | 有意水準2.5%の臨界値 |
| 0.01 | 4.9382 | 有意水準1%の臨界値 |
| 0.001 | 8.0978 | 有意水準0.1%の臨界値 |
有意水準が厳しいほど臨界値は高くなります。「偶然ではないと言い切るためのハードルが上がる」ということですね。
F.DIST.RT関数との逆関数関係を確認する
F.INV.RT関数はF.DIST.RT関数の逆関数です。次の式で元に戻ることを確認できます。
=F.DIST.RT(F.INV.RT(0.05, 3, 20), 3, 20)
結果は0.05になります。F.INV.RTで確率からF値を求め、F.DIST.RTでF値から確率に戻しているわけです。
逆方向も同様です。
=F.INV.RT(F.DIST.RT(3.10, 3, 20), 3, 20)
結果は約3.10に戻ります。この関係を覚えておくと、2つの関数の使い分けに迷わなくなりますよ。
F.INV.RT関数の実務活用例
F.INV.RT関数の基本がわかったところで、実際の業務で使えるパターンを3つ紹介します。
F検定の臨界値を求める――2グループのばらつきに差があるか判定する
「拠点Aと拠点Bの売上のばらつきに差があるか」を判定するF検定では、計算したF値と臨界値を比較します。臨界値の算出にF.INV.RT関数が使えます。
拠点A(10件)と拠点B(12件)のデータがある場合、自由度1 = 9、自由度2 = 11です。有意水準5%の臨界値を求めてみましょう。
=F.INV.RT(0.05, 9, 11)
結果は約2.90です。計算したF値がこの臨界値を超えていれば、「ばらつきに有意な差がある」と判断します。
TIP
p値で判定したい場合はF.DIST.RT関数を使います。
=F.DIST.RT(F値, 9, 11)の結果が0.05未満であれば有意です。臨界値との比較とp値での判定、どちらを使っても結論は同じですよ。
一元配置分散分析(ANOVA)の臨界値――3グループ以上の平均差を判定する
拠点A・B・Cの月間売上(各5件ずつ、合計15件)を分析する場合を考えます。自由度1 = グループ数 – 1 = 2、自由度2 = 全データ数 – グループ数 = 12 です。
有意水準5%の臨界値を求めます。
=F.INV.RT(0.05, 2, 12)
結果は約3.89です。計算したF値(たとえば3.0)がこの臨界値を下回っていれば、「3拠点の平均に有意な差があるとはいえない」と判断します。
F値が臨界値を超えた場合は、「少なくとも1組のグループ間に有意な差がある」ということです。どのグループ間に差があるかは、追加の多重比較検定で調べてくださいね。
回帰分析のF値判定――モデル全体が意味を持つか確認する
説明変数3つ・サンプル数30の重回帰分析でF値が5.2だったとします。自由度1 = 3、自由度2 = 26 です。
=F.INV.RT(0.05, 3, 26)
結果は約2.98です。F値5.2はこの臨界値を大きく超えているので、「回帰モデルは統計的に有意」と判断できますね。
NOTE
臨界値との比較だけでなく、F.DIST.RT関数でp値も確認するとより丁寧です。
=F.DIST.RT(5.2, 3, 26)の結果が0.05未満であれば有意です。
F分布関数ファミリーの使い分け
Googleスプレッドシートには、F分布に関連する関数がいくつかあります。それぞれの役割を整理しておきましょう。
| 関数 | 方向 | 用途 |
|---|---|---|
| F.DIST | F値 → 確率(左側) | 累積確率や確率密度を求める |
| F.DIST.RT | F値 → 確率(右側) | p値の算出に直結 |
| F.INV | 確率 → F値(左側) | 左側累積確率から臨界値を算出 |
| F.INV.RT | 確率 → F値(右側) | 有意水準から直接臨界値を求める(この記事の関数) |
| F.TEST | データ範囲 → p値 | 分散比を自分で計算しなくてよい |
使い分けのポイントは「やりたいこと」で決まります。
- p値を求めたい → F.DIST.RTにF値を渡す
- 臨界値を求めたい(有意水準から直接) → F.INV.RTに有意水準を渡す
- 臨界値を求めたい(左側確率から) → F.INVに
1 - 有意水準を渡す - データから直接F検定したい → F.TESTにデータ範囲を渡す
類似する逆関数との比較
F.INV.RT以外にも、分布の右側逆関数はいくつかあります。使う場面が異なるので整理しておきましょう。
| 関数 | 対応する分布 | 主な用途 |
|---|---|---|
| F.INV.RT | F分布 | 分散の比較・分散分析の臨界値 |
| T.INV.2T | t分布(両側) | 少数サンプルの平均差検定・信頼区間 |
| CHISQ.INV.RT | カイ二乗分布 | カテゴリデータの偏り検定の臨界値 |
使い分けの基準はシンプルです。
- 分散(ばらつき)を比べたい → F.INV.RT
- 少数サンプルの平均差を検定したい → T.INV.2T
- カテゴリデータの偏りを調べたい → CHISQ.INV.RT
F.INV.RT関数でよくあるエラーと対処法
F.INV.RT関数でつまずきやすいポイントをまとめました。
確率に0以下または1以上を指定して#NUM!エラー
確率は0より大きく1より小さい値でなければなりません。0や1、負の値を指定すると#NUM!エラーになります。
=F.INV.RT(0, 3, 20) → #NUM! エラー
=F.INV.RT(1, 3, 20) → #NUM! エラー
=F.INV.RT(-0.05, 3, 20) → #NUM! エラー
F.INV.RTは右側確率を指定するので、有意水準5%なら 0.05 をそのまま渡せます。F.INV関数のように 1 - 0.05 = 0.95 に変換する必要はありませんよ。
自由度に1未満を指定して#NUM!エラー
自由度1・自由度2はどちらも1以上の正の整数でなければなりません。0を指定すると#NUM!エラーになります。
=F.INV.RT(0.05, 0, 20) → #NUM! エラー
=F.INV.RT(0.05, 3, 0) → #NUM! エラー
引数に文字列を渡して#VALUE!エラー
数値であるべき引数にテキストが入ると#VALUE!エラーになります。セル参照を使うときは、参照先が数値であることを確認しましょう。
=F.INV.RT("abc", 3, 20) → #VALUE! エラー
F.INVとF.INV.RTを混同してしまう
F.INVは左側累積確率を、F.INV.RTは右側確率を引数に取ります。有意水準5%の臨界値を求めるとき、どちらに何を渡すかを間違えると結果が大きく変わります。
=F.INV.RT(0.05, 3, 20) → 約3.10(正しい: 有意水準5%の臨界値)
=F.INV.RT(0.95, 3, 20) → 約0.16(間違い: これは右側95%点)
=F.INV(0.95, 3, 20) → 約3.10(正しい: こちらでもOK)
迷ったときの判断基準はシンプルです。有意水準をそのまま渡したいならF.INV.RT、1 - 有意水準 で渡したいならF.INVを使ってくださいね。
まとめ
F.INV.RT関数は、F分布の右側確率(有意水準)からF値(臨界値)を逆算する関数です。
- 3つの引数は「確率(右側確率)」「自由度1(分子)」「自由度2(分母)」
- 有意水準をそのまま渡せるので、F検定や分散分析の臨界値を直感的に求められる
- F.INV関数との関係は
F.INV.RT(p) = F.INV(1-p) - FINV(旧関数)と同じ動作。新しい数式ではF.INV.RTを推奨
- F.DIST.RT関数の逆関数で、確率とF値の相互変換ができる
- 確率に0や1を渡すと
#NUM!エラー。有意水準を直接渡せるのがこの関数の利点 - 関連関数として、p値を求めるにはF.DIST.RT、データから直接検定するにはF.TESTが便利
F検定や分散分析の臨界値をサッと求めたいとき、F.INV.RT関数なら有意水準をそのまま渡すだけで結果が出ます。ぜひ活用してみてくださいね。
