T.TEST関数の使い方|Excel t検定でp値を求めて有意差を判定する完全ガイド

スポンサーリンク

「研修前後で点数は本当に上がった?」「A店とB店で売上に差はある?」と聞かれて、Excelで答えに詰まった経験はありませんか。平均値を見比べるだけでは、差が偶然か本物か判断がつきませんよね。

ここで使えるのが、ExcelのT.TEST関数です。t検定(2グループの平均値に差があるかを統計的に判定する手法)の結果を、p値(確率)として一発で返してくれます。

本記事では、構文の基本から、tails(片側/両側)とtype(対応あり/等分散/異分散)の使い分けまで解説します。業務シナリオでの実例やp値の読み方も、腹落ちするまで噛み砕いていきますね。

T.TEST関数とは?Excelでt検定のp値を返す関数

「T.TEST = t検定」の意味

T.TEST関数は、Excelで2つのデータセットからt検定を実行し、p値を返す統計関数です。読み方は「ティー・テスト」です。

関数名のT.TESTは、T(t分布を用いた)+ TEST(検定)の組み合わせです。「t分布を使って2グループの差を検定する関数」と覚えておきましょう。

具体的には、2つのサンプルデータの平均値が「統計的に意味のある差」を持つかどうかを判定します。判定結果はp値(その差が偶然起こる確率)として返ります。p値が小さいほど「偶然では起きにくい=本当に差がある可能性が高い」と判断できる仕組みです。

t分布関連関数の中での位置づけ

t分布関連のExcel関数は、大きく3つのグループに分かれます。

  • 確率を求める: T.DIST / T.DIST.RT / T.DIST.2T
  • 臨界値を求める: T.INV / T.INV.2T
  • 検定を実行する: T.TEST(本記事)

T.TESTは「2サンプルからp値まで一気に出す」役割で、検定の最終アウトプットを担当します。臨界値計算が必要な場合は、姉妹関数のT.INV.2T関数が使えますよ。

主な使いどころ一覧

T.TEST関数の代表的な活用シーンは次の3つです。

  • 施策実施前後の効果検証(売上・点数・体重などの変化)
  • A/Bテストで2案の優劣を統計的に判定
  • 品質比較(製造ラインA・B間の不良率や寸法差)

実務では特に「前後比較」と「2グループ比較」での出番が多いです。データを並べてT.TESTを1本書くだけで、報告書の説得力がぐっと上がりますよ。

T.TEST関数の書き方(構文と引数)

=T.TEST(array1, array2, tails, type)の4引数

T.TEST関数はExcel 2010以降で利用できる統計関数です。構文は次の4引数構成です。

=T.TEST(array1, array2, tails, type)
  • array1: 1つ目のデータセット(配列または範囲)
  • array2: 2つ目のデータセット(配列または範囲)
  • tails: 1=片側検定、2=両側検定
  • type: 1=対応あり、2=等分散の独立、3=分散異なる独立

たとえば「A2:A11とB2:B11のデータで、両側・対応ありの検定」を行う場合は次のように書きます。

=T.TEST(A2:A11, B2:B11, 2, 1)
→ 0.0023(例)

戻り値は0〜1の確率(p値)です。0.05未満なら「5%水準で有意差あり」と判断するのが一般的なルールですよ。

tailsとtypeの選び方の基本ルール

ここで覚えておきたいのが、tailsとtypeの選び方です。検定の種類が変わるだけで結果が大きく変わるので、必ず最初に整理しましょう。

tails(片側か両側か)は仮説の方向で決めます。「Aの方がBより大きい」と方向を限定するなら片側(tails=1)です。「AとBに差がある」と方向を問わないなら両側(tails=2)になります。実務では迷ったら両側(=2)を選ぶのが安全ですよ。

typeは2つのデータセットの関係で決まります。同じ対象の前後比較なら1、独立した2グループで分散が等しいなら2、分散が異なるなら3です。type選びの詳細は後述の早見表で整理しますね。

戻り値はp値(0以上1以下の確率)

T.TESTが返すのはp値そのものです。p値とは「もし本当は差がないとしたら、観測されたデータが偶然得られる確率」を意味します。

=T.TEST(A2:A11, B2:B11, 2, 2) → 0.0341

この場合、「差がないと仮定したときに、こんな差が偶然出る確率は約3.4%」という意味になります。一般的な5%基準(p < 0.05)を下回っているので、「有意差あり」と判定できますよ。

T.TEST関数の基本的な使い方

サンプルデータでp値を計算してみる

まずはシンプルな例で動作確認をしましょう。研修前後の点数比較を想定したデータです。

A列(研修前): 60, 62, 65, 68, 70, 72, 75, 78
B列(研修後): 65, 68, 70, 72, 75, 78, 80, 82

ここでT.TESTを実行してみます。

=T.TEST(A2:A9, B2:B9, 2, 1)
→ 0.0001 程度

p値が0.05どころか0.01も大きく下回っていますね。「研修前後で点数に有意差がある」と強い確信を持って言える結果です。研修効果が統計的に立証されたわけですよ。

p値の解釈(有意差の判定基準)

p値が出たら、有意水準(差ありと判定する基準確率)と比較して結論を出します。実務でよく使う基準を表にまとめました。

p値の範囲解釈報告での書き方の例
p < 0.011%水準で有意差あり(強い証拠)有意差あり(p<0.01)
p < 0.055%水準で有意差あり(一般的な基準)「有意差あり(p<0.05)」
p ≥ 0.05有意差なし「有意差は認められない」

「p値が小さい=差が確実」と直感的に覚えておくと判断が速くなります。逆にp値が0.05以上の場合は「差があるとは断言できない」と慎重に書くのがビジネス文書の作法ですよ。

自動判定を組み込む数式

IF関数と組み合わせれば、報告書のセルに「有意差あり」「有意差なし」を自動表示できます。

=IF(T.TEST(A2:A9, B2:B9, 2, 1) < 0.05, "有意差あり", "有意差なし")

3段階で判定したい場合は、IFS関数を使うとスッキリ書けます。

=IFS(T.TEST(A2:A9,B2:B9,2,1)<0.01,"強い有意差",T.TEST(A2:A9,B2:B9,2,1)<0.05,"有意差あり",TRUE,"有意差なし")

ダッシュボードや定例レポートに組み込むと、毎回の解釈作業が不要になりますよ。

tails × type 6パターンの使い分け早見表

T.TESTで一番悩むのが、tailsとtypeの組み合わせ選びです。実務シナリオ別にまとめた早見表を用意しました。

パターンtailstype使う場面の例
前後の片側11研修後に点数が上がったか(方向限定)
前後の両側21ダイエット前後で体重に変化があったか
等分散・片側12A店の方がB店より売上が高いか(同規模)
等分散・両側22同条件のA組B組のテスト点数比較
異分散・片側13A店の方がB店より単価が高いか(規模差大)
異分散・両側23規模の違うA社B社の品質比較

実務での迷い方を減らす3ステップを覚えておきましょう。

  1. 同じ対象の前後比較か? → YES なら type=1、NO なら次へ
  2. 2グループの分散はだいたい同じか? → YES なら type=2、NO なら type=3
  3. 「Aの方が大きい」と方向を限定するか? → YES なら tails=1、NO なら tails=2

迷ったら type=3, tails=2(異分散・両側)を選ぶのが最も無難で、近年の統計実務でも推奨されていますよ。

T.TEST関数の実践的な使い方・応用例

施策実施前後の売上比較(type=1)

マーケティング施策の効果を検証するシナリオです。10店舗で実施した施策の前後売上が、A2:A11(前)とB2:B11(後)に入っているとしましょう。

=T.TEST(A2:A11, B2:B11, 2, 1)
→ 0.0078

p値が0.05を下回ったので、「施策によって売上に有意な差が生じた」と報告できます。同一店舗の前後比較なので、type=1(対応あり)が必須ですよ。

ここで誤ってtype=2や3を選ぶと、ペアになっている情報が無視され、検出力が落ちて差を見逃すリスクがあります。前後比較では必ずtype=1を使ってくださいね。

A/Bテストでクリック率比較(type=3 ウェルチ)

WebサイトのA案・B案でクリック率を比較するシナリオです。A案はサンプル数が多く、B案は少なめという状況がよくあります。

=T.TEST(A2:A101, B2:B51, 2, 3)
→ 0.0421

サンプルサイズが違う2グループは分散も異なりがちなので、type=3(ウェルチのt検定)を使うのが安全です。p値0.0421なら5%基準で「B案の方が優れている」と判定できますよ。

ウェルチのt検定は、等分散仮定が成り立たない場合でも頑健に動作します。最近の統計教科書では「迷ったらWelch」が標準的な指針になっていますね。

品質管理での製造ライン比較(type=2 等分散)

製造ラインAとBで部品寸法を比較するシナリオです。両ラインとも同じ機械・同じ条件なので、分散は等しいと仮定できる場面ですね。

=T.TEST(A2:A31, B2:B31, 2, 2)
→ 0.1245

p値が0.05を上回ったので、「両ラインの品質に有意差があるとは言えない」と結論できます。製造工程の品質均一性を確認するレポートで重宝しますよ。

事前にF.TEST関数で等分散性を確認してからtype=2を選ぶのが本来の手順です。F.TESTのp値が0.05以上なら「等分散と見なしてOK」と判断できますね。

F.TESTとの連携でtype判定を自動化

実務ではtype=2かtype=3かの判断を自動化すると便利です。F.TESTの結果に応じて、IF関数で切り替える方法があります。

=IF(F.TEST(A2:A31,B2:B31)>=0.05, T.TEST(A2:A31,B2:B31,2,2), T.TEST(A2:A31,B2:B31,2,3))

F.TESTで等分散と判断できればtype=2、そうでなければtype=3を自動選択する仕組みです。判定ロジックをセル数式に閉じ込めると、データが更新されても都度悩まずに済みますよ。

T.INV.2Tとの違い・使い分け

p値ベース(T.TEST) vs 臨界値ベース(T.INV.2T)

t検定の結論を出すには、2つのアプローチがあります。p値で判定するか、臨界値(境界となるt値)で判定するかです。

関数入力出力判定方法
T.TEST2つのデータセットp値p < α なら有意差あり
T.INV.2T確率と自由度臨界値tt統計量 > 臨界値 なら有意差あり

T.TESTは「データを渡すだけ」で結論まで一気に出せる手軽さが魅力です。一方T.INV.2Tは検定統計量や信頼区間を細かく組み立てたい場合に使います。論文や統計レポートでは両方を併記するスタイルもよく見かけますよ。

両方をセットで使うレポート例

報告書の説得力を高めるなら、両方を併記するのが効果的です。

p値:        =T.TEST(A2:A11, B2:B11, 2, 3)
自由度:     =COUNT(A2:A11)+COUNT(B2:B11)-2
臨界値:     =T.INV.2T(0.05, COUNT(A2:A11)+COUNT(B2:B11)-2)

p値と臨界値の両方を提示すると、「数値で判断する派」と「視覚的な境界で判断する派」の両方に対応できます。社内のレビュー文化に合わせて使い分けるとよいですよ。

旧TTEST関数との互換性

T.TEST関数は、Excel 2010以降に導入された比較的新しい関数です。それ以前のバージョンでは、旧TTEST関数が同じ役割を担っていました。

両者の関係は次のとおりで、結果は完全に一致します。

=TTEST(A2:A11, B2:B11, 2, 2)   → 0.0341
=T.TEST(A2:A11, B2:B11, 2, 2)  → 0.0341

引数の順序・型・戻り値、すべて同一です。互換性のため旧TTESTも引き続き使えますが、新規作成時はT.TESTを推奨します。関数名に「.」が入る新世代の命名ルールに沿うためです。

これでT.DISTT.INV、T.TESTといったt分布ファミリー全体で一貫性が保てますよ。なおGoogleスプレッドシート版T.TESTも構文は同じです。Excelとほぼ同じ感覚で使えます。

よくあるエラーと対処法

#N/Aエラー(type=1でデータ数不一致)

T.TESTで一番起きやすいのは#N/Aエラーです。type=1(対応あり)で2つのデータセットの件数が異なると発生します。

A列: 8件, B列: 7件 → =T.TEST(A2:A9, B2:B8, 2, 1) → #N/A

対応のあるt検定はペアでデータを比較するので、件数が一致している必要があります。データに欠損がある場合は、ペアになっていない行を削除するか、type=2/3に切り替えてくださいね。type=2/3(独立サンプル)なら件数が違っても動作します。

#NUM!エラー(tailsまたはtypeが範囲外)

tails・typeに指定範囲外の値が入ると#NUM!エラーになります。

  • tailsが1または2以外: 例 =T.TEST(A,B,3,1)
  • typeが1〜3以外: 例 =T.TEST(A,B,2,4)

引数を仕様内(tails: 1または2、type: 1〜3)に直すだけで解決します。tailsを「片側=2、両側=1」と逆に覚えてしまうケースが多いので、片側=1、両側=2と再確認してみてくださいね。

#VALUE!エラー(引数に文字列)

引数に数値以外(文字列・空白など)が入ると#VALUE!エラーが返ります。

=T.TEST(A2:A11, B2:B11, "2", 1)  → #VALUE!

外部からデータをコピペした直後に、文字列扱いになっているケースが多いです。VALUE関数で数値変換するか、セルの書式設定を「標準」に戻して再入力してみてください。データ型を揃えてから検定をかけるのが確実ですよ。

まとめ

T.TEST関数は、2つのデータセットからt検定のp値を一発で返すExcel関数です。施策効果の検証やA/Bテストの判定、品質比較で大活躍してくれますよ。

ポイントを振り返っておきましょう。

  • 構文は =T.TEST(array1, array2, tails, type) の4引数
  • tailsは片側=1、両側=2(迷ったら両側)
  • typeは対応あり=1、等分散=2、異分散=3(迷ったら3)
  • p値 < 0.05 で「有意差あり」と判定するのが一般的
  • 旧TTESTと結果は同じだが、新規はT.TESTを推奨

「平均値を見比べるだけ」の時代はもう終わりです。T.TESTでp値を計算して、根拠ある意思決定をしていきましょう。

姉妹記事のT.INV.2T関数(臨界値計算)T.DIST関数(確率計算)もあわせて活用してみてください。t検定の世界がぐっと身近になりますよ。

タイトルとURLをコピーしました