2011年8月27日土曜日

エクセルExcelでの簡単統計(t検定)

思いつくままの記事だけではなく,少しは実学的なことも書くことにしました.
卒業論文や修士論文を書くためにデータ分析をしている人の役に立つものをということで,今回は実験研究における統計処理をとりあげます.
論文指導をしている時に学生からよく出る質問を基に構成してあります.

高度で高価な統計処理ソフトを扱うことが少ない大学生の卒業論文では,データ分析のほとんどをExcelで行います.
人生でたった一度かもしれない統計処理のためにSPSSだのSASだのといったソフトを覚えるのは辛いものです.

ExcelでできることはできるだけExcelで,というコンセプトで解説します.
実験を進めている途中の段階でExcelにデータを打ち込んだ時に,ササッと簡単に分析をしたい院生にも参考になるかと思います.

「統計処理は専用ソフト(SPSSなど)でしかできない」 「Excelでの統計処理は難しい」 と思っている学生・院生も多いようですが,場合によってはExcelの方が楽にできますので覚えておくと便利です.

ただ,独学の部分がほとんどですのでクセがある操作かもしれません.あしからずご容赦ください.


今回は主にt検定について説明します.
t検定というのは,2つの集団を比較し,どっちが大きい/小さいのか?という分析をしたい時につかう統計処理方法です.

※後日,ここで紹介する「対応のないt検定」のノンパラメトリック版である,
ウィルコクソンの符号付順位和検定(エクセルでp値を出す)
も載せました.ご参照ください.



典型的かどうかはわかりませんが,以下のようなExcelデータをよく見かけます.こういったデータであればt検定ができます.
画像の部分をクリックしたら大きくなりますので,お手数ですがよろしくお願いします.
上半分の表がA群,下半分がB群です.
平均値とSD(標準偏差)までは出している,という前提で進めます.

(あくまで私の中で)ものすごく基本的なことではありますが重要なことなので覚えておいてください
図に示したように,比べたいもの同士の列を揃えておくと,あとあと分析が楽になります.

1.視線を大きく動かさなくても比較したい平均値とSDを見れる
2.t検定のための作業が楽
3.ミーティング用として資料をつくる場合でも,専用にレイアウトを組み直さなくてもA41枚分としてそのまま印刷できる
という特長があります.

さて,早速作業開始ですが,
t検定のために,まずは等分散性の検定をやっておきましょう.
ExcelではF検定が使えますので,それを使用します.

「等分散性の検定って何?」 「なんでそんなことするの?」 という人は専門書を読んでおいてください.ここではそういった解説は割愛します.
図でいう所の,[ C列10行 ] のセルに,半角英数で以下のように打ち込みます.

=FTEST(C3:C7,C15:C19)

図のようになってくれると思います.
そして確定すると,以下の図のようになります.
で,これをオートフィル機能をつかってコピーすると,
こうなって,
という状態になります.一気に全ての組み合わせの等分散性検定(F検定)ができます.

ここで出てきた数値はP値です(P値って何?という人は専門書を読んでください).
一般的に5%未満であれば有意とされていますので,出てきた数値の中から0.05以下の数値があるセルがないかどうか確認します.
M列10行目がそれに該当しますね.フォント色を変えたり塗りつぶし機能とか条件付き書式機能などをつかって目立たせておきましょう.


次からいよいよt検定です.
その前に,B列に項目名をつけておきました.
「t検定1が無い!」 と思われるかもしれませんが,これらの名称には意味がありますので.後述します.
C列11行のセルに,F検定を入力した時と同じようにして以下の関数を打ち込みます.

=TTEST(C3:C7,C15:C19,2,2)
そしてオートフィル.
次にC列12行のセルに,上記とは一部が異なる以下の関数を打ち込みます.

=TTEST(C3:C7,C15:C19,2,3)

そしてオートフィル,
1つめと2つめのt検定の関数が違う部分は,一番最後の数値です.2と3の部分が違っています.
そういう意味もあって項目名を 「t検定2」 と 「t検定3」 ということにしました.

そしてこれも重要なことですけど,
今回,t検定の関数の一番最後の数値を2と3にしたのは,比べる群が異なる集団という状況設定だからです.
A群とB群は違う者同士ということです.
違う者同士を比べるのであれば,今回のように一番最後の数値を2か3にしたt検定を用意し,比較します.

もしA群とB群を構成している者がまったく同じであれば,一番最後の数値の2と3の部分を,1にしなければいけません.
が,これについてはまた次回に解説します.

これでt検定は終了です.
t検定の部分も,有意水準である0.05よりも小さいところに目印をつけておきましょう.
端折って解説すると,11行目(t検定2)に入れたt検定は等分散性を仮定した検定,12行目(t検定3)は非等分散性を仮定した検定です.

さて,分析結果の見方ですが,
まずは 「測定X1回」 を見てみましょう.
11行目,12行目のt検定とも0.044ということで,有意水準である0.05よりも小さいです.
F検定が0.9442ということですので,結果は11行目の方を見ますが,どちらも0.044ですので解釈に大きな違いはありません.
“A群の方がB群よりも有意に大きい” ということです.

次に 「測定Y4回」 の11行目のt検定が0.045であり,0.05よりも小さいですね.
12行目のt検定は0.056で0.05よりも大きいのですが,F検定の結果が0.207816と出ていますので,11行目の結果を見ます.
「測定Y4回」 の結果の解釈は,“B群の方がA群よりも有意に大きい” ということで片付けます.


で,最後にF検定によって等分散性が認められなかったM列の 「測定Z」 です.
等分散性が認められないわけですから12行目のt検定の結果をみます.
11行目のt検定では0.039ということで有意なのですが,12行目では0.059です.
従って,測定ZはA群のほうがB群よりも平均値は大きいように見えますが,有意に大きいとまでは言えないという解釈になります.


今回の例でつかったデータではそうでもないのですが,膨大な項目数の統計処理にはSPSSよりもExcelのほうが楽で速いです.
例えば,以下の図のようにC列のところに「平均」 「SD」 「F検定」 「t検定」 をずらっと並べておいて,
あとは一気にオートフィルにしてしまえば,
どんなに大量のデータであっても楽々と分析できます.

0.05未満の部分が知りたい場合は,いちいちセルを目視確認しなくてもExcelの機能である 「条件付き書式」 で0.05未満のセルを色付けすれば一目瞭然になります.
私も最初は統計処理にはSPSSだけを使っていたのですけど,実はExcelのほうが慣れたら速いことに気づきました.


次回は対応のあるt検定の操作方法を解説します.
図でいう所のF列~L列の部分で,パパっと分析できる方法を紹介します.


※後日,こんな怪しいブログよりも信頼性が高いものに触れてもらうよう,
独学で統計処理作業をスキルアップさせるための本
という記事を書きました.参照してください.