シロート統計学講座 其の17
其の16では「対応のある2群間で比率を比較する」McNemar(マクネマー)検定を行いました。
▼其の16がまだの方は▼

今回はEZRを使って「独立した3群以上の間の連続変数を比較する」統計解析である分散分析(ANOVA)を行います。分散分析は analysis of variance の略語で ANOVA と記載されることが多いです。理学療法領域の論文でもよく出てくる検定名ですので、一度は見たことがあるのではないでしょうか。
デモデータ
今回もデモ用のExcelファイルを用意しているので、必要な方はダウンロードして一緒にEZRを操作してみてくださいね。EZRのダウンロードがまだの方は無料統計ソフトEZRのダウンロードからどうぞ。
今回のデモ用データはA群(20人)、B群(20人)、C群(20人)の3群間で握力を比較した仮想データになっています。分散分析(ANOVA)を行うことで、3群間の握力の平均値に有意差があるのかを調べることができます。
それでは、始めます。
分散分析(ANOVA)の流れ
はじめに分散分析(ANOVA)の流れを簡単に説明しておきます。
②等分散性の確認
③分散分析(ANOVA)の実施
④多重比較の実施
まず、分散分析(ANOVA)は正規分布・等分散性が前提のパラメトリック検定ですので、①と②の確認を行います。次に③分散分析(ANOVA)を行います。これを行うことで3群間のどこかに有意差があるのかどうかが分かります。
分散分析で有意差があった場合には④多重比較というものを行って、どの群間に有意差があるのかを調べます。
つまり分散分析(ANOVA)自体は3群間のどこかに有意差があるかを調べるだけなので、どの群間に有意差があるのかは多重比較をしないと分からないということです。
データの取り込み
では早速、デモ用データをEZRに取り込みましょう。
いつもはデータをクリップボードにコピーしてからEZRにインポートする方法をとっていましたが、今回はデータも多くなってきたので、別の方法で取り込んでみます(もちろん、いつもの方法でもできます)。
まずはデモ用データをダウンロードして、どこか(とりあえずデスクトップにでも)に保存してください。
そしてEZRの画面で「ファイル」→「データのインポート」→「Excelのデータをインポート」をクリック。
データセット名は何でもよいですが、握力のデータなので「grip」とします。下のところは特に変更しなくてよいので「OK」。
そして先ほどダウンロードしたExcelファイル(demo-anovaという名称になっています)を選択します。
するとEZRにデータを取り込むことができます。EZR画面内のデータセットが「grip」になっていれば、うまく取り込めています。
データの取り込み方法は、クリップボードにコピーしてからEZRに取り込む方法(前回まで当講座で行っていた方法)と、今回のようにExcelファイルを直接取り込む方法があります。
私は主に前者を使用していますが、統計用にきちんと整理されたデータであれば後者の方が早いかもしれません。
正規分布の確認
では次に正規分布の確認を行ってみましょう。
正規性を調べるためには主に2つの方法がありました。
②正規性の検定を行う
この2つを総合的にみて、正規分布かどうかを判断します。
▼正規分布についてもう少し知りたい方▼

視覚的な分布の確認
視覚的に分布の確認を行うため、ヒストグラムをチェックしてみます。
「グラフと表」→「ヒストグラム」をクリック。
変数は「grip」、群別する変数を「category」として「OK」。
すると以下のようなヒストグラムが表示されます。
A・B・C群いずれも概ね鐘型の分布になっていますね。
視覚的な確認はやや主観的となりますが、鐘型から大きく外れる(山が二つになる等)ことがなければOKです。
正規性の検定
次に正規性の検定を行います。この検定を行うことで「正規分布ではない」ということを検出できます。
「統計解析」→「連続変数の解析」→「正規性の検定(Kolmogorov-Smimov検定)」をクリック。
変数は「grip」とします。A・B・C群の各群で正規性を確認する必要があるので、一つの群だけを解析対象にするよう指定します。下の枠に「category==”A”」と記載します。

これでA群のみを解析対象にできます。
※今回のデータはスプレッドシート1行目(つまり変数名)が「category」となっているのでこのような記載となります。みなさんがご自身の研究でこの手順を行うときは、ご自身で決めた変数名を記載します(〇〇==”□”)。
「OK」をクリックすると正規性の検定が実行され、結果が2つ表示されます。
この2つのP値が<0.05である場合は正規性が棄却されます(つまり正規分布ではないということ)。今回は2つともP≧0.05ですので、正規性は否定されませんでした。
同様にB群、C群についても調べてみてください。それぞれ「category==”B”」「category==”C”」で群を指定すればOKですよ。詳細は割愛しますが、いずれも正規性は否定されませんでした。
視覚的な確認、正規性の検定ともに正規性は否定されなかったので、今回は3群とも正規分布とみなして問題なさそうです。
等分散性の確認
最後に等分散性を確認します。分散とは「平均値からのバラツキの程度」のことですので、3群が同じようなバラツキであるかを調べる、ということです。
「統計解析」→「連続変数の解析」→「3群以上の等分散性の検定(Bartlett検定)」をクリック。
目的変数は「grip」、グループは「category」を指定して「OK」。
すると等分散性の検定が実行され、結果が表示されます。
この検定はP<0.05の場合に等分散性が棄却されます(つまり等分散ではないということ)。今回はP=0.06ですの等分散性も否定されませんでした。
分散分析(ANOVA)・多重比較の実施
さて、3群それぞれの正規分布・等分散性が確認できましたので、いよいよ分散分析(AVOVA)と多重比較を実施していきます。
「統計解析」→「連続変数の解析」→「3群以上の間の平均値の比較(一元配置分散分析one-way ANOVA)」をクリック。
目的変数は「grip」、比較する群は「category」を選択し、等分散を考えますか?のところは「はい」を指定します。ちなみに等分散性が否定された場合は「いいえ(Welch検定)」を指定します。
そして、下の「2組ずつの・・」と書かれたところが多重比較を指定するところです。多重比較は4つ準備されていますが、基本的には「tukeyの多重比較」を選択しておけば問題ないようです。
「OK」をクリックすると分散分析(ANOVA)と多重比較が実行され、結果が表示されます。
まずは棒グラフですね。パッと見たところB群が握力の平均値が高そうです。
次に分散分析(ANOVA)のサマリーをみてみましょう。
summary.anovaと書いてある部分です。
これは分散分析(ANOVA)の結果になるのでP<0.05の場合は「3群間のどこかに有意差あり」との判断になります。今回はP=4.8×10^6(つまりP=0.0000048)ですので有意差ありです。
では多重比較の結果をみて、どの群間に有意差があるかを確認します。結果の一番下にある表が多重比較の結果になります。
上から順に「BとAの差」「CとAの差」「CとBの差」のP値が示されています。P<0.05で有意差ありと判断できますので、今回は「BとAの差」と「CとBの差」に有意差を認めました。
つまり「B群はA群・C群と比較して有意に握力の値が高い」と結論づけることができます。
まとめ
以上、EZRで分散分析(ANOVA)を行う方法を説明しました。
私は初心者のうちは分散分析(ANOVA)→多重比較の流れを理解しておらず、意味が分かりにくい所でした。分散分析(ANOVA)はあくまで「3群間のどこかに有意差がある」ことしか分からないというのが理解のポイントですね。
多重比較は4つ準備されており、それぞれに特徴があるようなのですが、今回はそこは割愛しています。参考書では
Tukey法は検出力が高く、広く用いられています。
参考:フリー統計ソフトEZRで誰でも簡単統計解析
(P114)
とされており、基本的にはTukey法で問題はないかと思いますが、また別の機会にまとめてみます。
さて、次回は「独立した3群以上の間の連続変数を比較する」統計解析でノンパラメトリック検定であるKruskal-Wallis検定を行います。
▼其の18に続く▼

《シロート統計学講座 in YouTube》
EZRでMcNemar検定を行う方法を動画にしてみました。ブログを読んだあと、実際にEZRを操作している所をこちらで見てみてください。
コメント
薬剤師をしています。解析が全くできず他力本願で一報目を投稿。その後未解析部分について何とか頑張ろうと、本サイトで学びながら解析を実行しています。
唾液量と吸入薬による嗄声を、研究中です。唾液量は1分間で0.25g以下が以上とされています。数値が少数となっている場合、連続変数としてソフトは認識しないのでしょうか?この唾液量を従属変数とし、併用薬剤数が0=A、1~3=B、4種類以上=Cと3群分けしANOVAの解析を実施しましたがどうしても変数として唾液量(少数)が認識されないようです。ヒストグラムで見たとき目的変数の窓に表示されません。連続変数は小数点は認識不能なのですか?それとも何かほかに問題があるのでしょうか?
ご教示よろしくお願いします。
コメントありがとうございます。
小数点がついていても連続変数として認識可能です。原因として思いつくのは、列のどこか(一番上の変数名以外)に文字列が入っていないか、「.」が「,」になっていないか、数字に全角が混ざっていないか、などですが、いかがでしょうか。