「サンプル数が少ないデータで、平均の差に意味があるのか確かめたい」。こんな場面に出くわしたことはありませんか?
正規分布を使った計算はサンプルが十分に多いときの手法です。少数データでそのまま使うと、判定の精度が落ちてしまいますよね。
そんなときに使うのがT.DIST関数です。この記事ではGoogleスプレッドシートでのT.DIST関数の使い方を、基本構文から実務活用まで解説します。TRUE/FALSEの違いや、T.DIST.2T・T.DIST.RTとの使い分けもあわせて紹介しますよ。
スプレッドシートのT.DIST関数とは
T.DIST関数(読み方: ティー・ディスト関数)は、t分布にもとづいて確率を返す関数です。「T」はt分布の「t」、「DIST」は「Distribution(分布)」の略です。
t分布は正規分布と似た釣鐘型の形をしていますが、裾が厚い(両端が広がっている)のが特徴です。サンプル数が少ないとき(目安として30未満)に、正規分布の代わりに使います。
T.DIST関数にできることをまとめると、次のとおりです。
- ある値がt分布の左側何%に位置するかを求める(累積確率)
- t分布のグラフ上の密度(高さ)を取得する
- 小ロット検査で「母集団の平均と差があるか」を判定する
- A/Bテストや実験データの統計的検定に活用する
NOTE
T.DIST関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、動作は同じです。
基本構文と3つの引数
=T.DIST(x, 自由度, 累積)
カッコの中に3つの引数を指定します。
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| x | 必須 | t分布で評価する数値 |
| 自由度(degrees_freedom) | 必須 | 自由度。サンプルサイズ – 1 が基本(1以上の正の整数) |
| 累積(cumulative) | 必須 | TRUEで累積分布、FALSEで確率密度 |
TIP
自由度(データから自由に値を決められる個数)は、サンプルサイズから1を引いた値です。たとえばサンプル10個なら自由度は9になります。小数を渡した場合は整数部分だけが使われます。
TDIST(旧関数名)との関係
GoogleスプレッドシートにはTDISTという関数もあります。ただしTDISTは右側累積確率を返す点がT.DISTと異なります。
=TDIST(2, 10, 1) ← 旧関数名(右側確率を返す)
=T.DIST.RT(2, 10) ← 新関数名で同じ結果
=1 - T.DIST(2, 10, TRUE) ← T.DISTで同じ結果を得る書き方
新しく数式を書くときはT.DIST(またはT.DIST.RT)を使いましょう。
TRUE/FALSEで何が変わる?累積か密度かを選ぼう
T.DIST関数の3番目の引数「累積」は、TRUEかFALSEで結果がまったく変わります。この違いを押さえておくことが、T.DIST関数を使いこなすポイントです。
TRUE(累積分布関数)——x以下は全体の何%?
TRUEを指定すると累積分布関数(CDF: ある値以下になる確率の合計)の値を返します。実務で使う場面のほとんどがこちらです。
=T.DIST(2, 10, TRUE)
この数式は「自由度10のt分布で、2以下になる確率」を返します。結果は約0.9633(96.3%) です。
つまりt値が2以下に収まる確率が約96.3%ということです。逆にいえば、t値が2を超えるのは約3.7%ですね。
FALSE(確率密度関数)——その値の密度は?
FALSEを指定すると確率密度関数(PDF: t分布グラフ上のy座標の値)を返します。
=T.DIST(2, 10, FALSE)
結果は約0.0611です。これは「確率」ではなくグラフの高さなので、直接「何%」と読むことはできません。t分布のグラフを描くときに使います。
2つを比較してみる(サンプルデータつき)
自由度10のt分布で、xを変えたときの結果を比べてみましょう。
| x | TRUE(累積確率) | FALSE(確率密度) |
|---|---|---|
| -2 | 0.0367(3.7%) | 0.0611 |
| -1 | 0.1704(17.0%) | 0.2304 |
| 0 | 0.5000(50.0%) | 0.3891 |
| 1 | 0.8296(83.0%) | 0.2304 |
| 2 | 0.9633(96.3%) | 0.0611 |
TRUEの列はxが大きくなるほど1に近づいていきます。FALSEの列はx=0(中央)で最大になり、離れるほど小さくなります。正規分布と同じ傾向ですが、裾の値がやや大きいのがt分布の特徴ですよ。
実務活用3パターン
T.DIST関数の基本がわかったところで、実際の業務で使えるパターンを3つ紹介します。
小ロット検査——製品の平均が規格どおりか判定する
少数サンプルで「母集団の平均が目標値と異なるか」を判定するのがt検定です。T.DIST関数を使えば、手計算なしでp値を求められます。
たとえば、部品の目標寸法が50mmのラインから10個サンプリングした結果が次のとおりだったとします。
まずt統計量を求めます。
=(50.3 - 50) / (0.5 / SQRT(10))
結果は約1.8974です。次に両側検定のp値をT.DIST.2Tで求めます。
=T.DIST.2T(1.8974, 9)
結果は約0.0903です。有意水準5%(0.05)より大きいので、「目標値50mmと有意な差があるとはいえない」と判断できます。
TIP
T.DIST.2Tの代わりにT.DISTで計算するなら
=2*(1-T.DIST(ABS(1.8974), 9, TRUE))と書けます。両側なので2倍するのがポイントです。
A/Bテスト——2つの施策に差があるか確かめる
Webサイトの施策AとBで効果に差があるかを検定する例です。
- 施策A: サンプル15件、平均スコア4.2、標準偏差1.1
- 施策B: サンプル15件、平均スコア3.5、標準偏差0.9
t統計量の計算式は長くなりますが、スプレッドシートなら1セルにまとめられます。
=(4.2 - 3.5) / (SQRT(((15-1)*1.1^2 + (15-1)*0.9^2) / (15+15-2)) * SQRT(1/15 + 1/15))
結果は約1.9075です。自由度は 15 + 15 – 2 = 28 です。
=T.DIST.2T(1.9075, 28)
結果は約0.0668です。有意水準5%にはわずかに届かないものの、10%水準では有意差ありと判断できます。施策Aが効果的な「傾向」は見えていますね。
学術レポート——t値からp値を算出する
論文や統計の授業で「t値と自由度が与えられている。p値を求めよ」という場面があります。
たとえば「t = 2.5、自由度 = 20」の片側p値を求めるなら、右側累積確率を使います。
=T.DIST.RT(2.5, 20)
結果は約0.0106です。片側5%水準で有意(p < 0.05)といえます。
両側検定のp値が欲しい場合は次のように書きます。
=T.DIST.2T(2.5, 20)
結果は約0.0212です。両側でも5%水準を下回っていますね。
t分布関数ファミリーの使い分け
Googleスプレッドシートには、t分布に関連する関数がいくつかあります。それぞれの役割を整理しておきましょう。
| 関数 | 用途 | 特徴 |
|---|---|---|
| T.DIST | 左側累積確率または確率密度を返す | 最も基本的。CDF/PDFを切り替え可能 |
| T.DIST.RT | 右側累積確率を返す | 1 – T.DIST(x, df, TRUE) と同じ |
| T.DIST.2T | 両側確率を返す | xは正の値のみ。両側検定のp値に直結 |
| T.INV | 確率からt値を逆算する(左側) | T.DISTの逆関数 |
| T.INV.2T | 確率からt値を逆算する(両側) | 臨界値の算出に便利 |
| T.TEST | 2つのデータ範囲でt検定のp値を返す | t統計量を自分で計算しなくてよい |
使い分けのポイントをまとめます。
- 片側検定のp値 → T.DIST.RT(右側)またはT.DIST(左側)
- 両側検定のp値 → T.DIST.2T
- 臨界値を求めたい → T.INV.2T(例: 有意水準5%・自由度20の臨界値)
- データ範囲から直接検定したい → T.TEST
迷ったらT.DIST.2Tで両側p値を求めるのが実務では安全ですよ。
正規分布関数(NORM.DIST)との違い
T.DIST関数とNORM.DIST関数は似ていますが、使い分けの基準は明確です。
| 比較項目 | T.DIST | NORM.DIST |
|---|---|---|
| 分布の形 | 裾が厚い(自由度で変化) | 左右対称の固定形状 |
| 引数 | x, 自由度, 累積 | x, 平均, 標準偏差, 累積 |
| 使う場面 | サンプル数が少ない(30未満の目安) | サンプル数が十分多い |
| 母集団の標準偏差 | 未知(サンプルから推定) | 既知 |
自由度が大きくなるとt分布は正規分布に近づきます。x=1.96のとき、自由度29で累積確率は0.9702、NORM.S.DIST関数(標準正規分布)では0.9750です。サンプル30個以上あれば、どちらを使っても結果はほぼ同じになりますよ。
よくあるエラーと注意点
T.DIST関数でつまずきやすいポイントをまとめました。
自由度に1未満を指定して#NUM!エラー
自由度は1以上の正の整数でなければなりません。0を指定すると#NUM!エラーになります。サンプル数が1のときは自由度が0になるので、T.DIST関数は使えません。
=T.DIST(1, 0, TRUE) ← #NUM! エラー
引数に文字列を渡して#VALUE!エラー
数値であるべき引数にテキストが入ると#VALUE!エラーになります。セル参照を使うときは、参照先が数値であることを確認しましょう。
T.DIST.2Tに負の値を渡して#NUM!エラー
T.DIST.2Tのxには正の値のみを指定できます。負のt値のp値を求めたいときは、ABS関数で絶対値に変換してください。
=T.DIST.2T(-2.5, 10) ← #NUM! エラー
=T.DIST.2T(ABS(-2.5), 10) ← 正しい書き方
片側と両側を間違える
T.DISTは左側確率、T.DIST.RTは右側確率、T.DIST.2Tは両側確率を返します。検定の種類(片側/両側)に合った関数を選ばないと、p値が2倍ずれます。迷ったときは両側のT.DIST.2Tを使うのが安全ですよ。
t分布を使うべき場面を確認する
t分布は「母集団の標準偏差が未知で、サンプルから推定する」ときに使います。母集団の標準偏差がわかっている場合はNORM.DIST関数のほうが適切です。
まとめ
T.DIST関数は、t分布にもとづいて確率を求める関数です。
- 3番目の引数にTRUEを指定すると「x以下の累積確率」が返る
- FALSEを指定するとグラフの密度値が返る(実務ではTRUEが主役)
- サンプル数が少ないとき(30未満が目安)に正規分布の代わりに使う
- 両側検定のp値を求めるならT.DIST.2T、右側ならT.DIST.RTが便利
- 自由度に0以下を渡すと
#NUM!エラー。T.DIST.2Tは正の値のみ受け付ける - 関連関数として、逆算にはT.INV、データから直接検定するにはT.TESTが使える
t分布は「少ないデータからでも統計的に判断したい」ときの強い味方です。品質管理やA/Bテストなど、少数サンプルの分析にぜひ活用してみてくださいね。
