実際には、データが仮定を完全に満たしていない場合、人々はどのように分散分析を処理しますか?


19

これは厳密な統計問題ではありません。ANOVAの仮定に関するすべての教科書を読むことができます。実際の作業アナリストが仮定を完全に満たさないデータをどのように処理するかを考えています。私はこのサイトで多くの質問に答えを探しましたが、ANOVAを使用しないとき(抽象的で理想的な数学的コンテキストで)またはRで以下に説明するいくつかの方法を行う方法についての投稿を探し続けています。人々が実際にどのような決定を下し、なぜそれを決定しようとしているのか。

4つのグループのツリー(統計ツリーではなく実際のツリー)からグループ化されたデータの分析を実行しています。各ツリーには約35の属性のデータがあり、各属性を調べて、その属性でグループが大きく異なるかどうかを判断します。ただし、いくつかのケースでは、分散が等しくないため、ANOVAの仮定にわずかに違反します(Leveneのテストによると、alpha = .05を使用)。

私が見るように、私のオプションは次のとおりです。1.データをパワー変換し、Levene p-valを変更するかどうかを確認します。2.ウィルコクソンのようなノンパラメトリック検定を使用します(もしそうなら、どれですか?)。3.ボンフェローニのように、ANOVAの結果に対して何らかの修正を行います(実際にこのようなものが存在するかどうかはわかりませんか?)。最初の2つのオプションを試したところ、わずかに異なる結果が得られました。場合によっては、一方のアプローチが重要で、もう一方のアプローチは重要ではありません。私はp値の釣りのtrapに陥ることを恐れており、どのアプローチを使用するのかを正当化するのに役立つアドバイスを探しています。

また、平均と分散が相関しない限り(つまり、両者が一緒に増加する)ANOVAの場合、不均一分散性はそれほど大きな問題ではないことを示唆するものも読んでいます。そのようなパターン?もしそうなら、これのテストはありますか?

最後に、ピアレビューされたジャーナルへの掲載のためにこの分析を行っていることを付け加える必要があります。そのため、私が決めようとするアプローチはすべて、レビューアーと一緒に合格しなければなりません。だから、もし誰かが同様の公開された例へのリンクを提供できれば素晴らしいでしょう。


3
使用するかどうかに関係なく、これらの問題のいくつかについて説明している異分散データに対する一元配置分散分析の代替案であるR私の回答を読むことは有益です。
GUNG -復活モニカ

回答:


18

実際の作業アナリストが、仮定を完全に満たしていないデータをどのように処理するかを理解しようとしています。

私のニーズ、どの仮定に違反しているか、どのように、どれほどひどく、それが推論に影響するか、そして時にはサンプルサイズに依存します。

4つのグループのツリーからグループ化されたデータの分析を実行しています。各ツリーには約35の属性のデータがあり、各属性を調べて、その属性でグループが大きく異なるかどうかを判断します。ただし、いくつかのケースでは、分散が等しくないため、ANOVAの仮定にわずかに違反しています(アルファ= .05を使用したLeveneの検定による)。

1)サンプルサイズが等しい場合、問題はほとんどありません。ANOVAは、nが等しい場合、異なる分散に対して非常に(レベル)ロバストです。

2)多くの研究で推奨されていると仮定するかどうかを決定する前に、分散の等価性をテストします。それらが同等に近いことを本当に疑っている場合は、単に等しくないと仮定する方が良いでしょう。

いくつかの参照:

Zimmerman、DW(2004)、
「分散の等価性の予備テストに関するメモ」。
Br。J.数学。統計 サイコ。5月 ; 57(Pt 1):173-81。
http://www.ncbi.nlm.nih.gov/pubmed/15171807

Henrikは3つの参考文献を提供します ここに

3)重要なのは効果の大きさであり、サンプルが大きく異なっていることを示すのに十分な大きさであるかどうかではありません。そのため、大規模なサンプルでは、​​分散の小さな差は、Leveneの検定では非常に重要であると示されますが、その影響には本質的な影響はありません。サンプルが大きく、効果サイズ(分散の比率または分散の差)が本来あるべき値に非常に近い場合、p値は重要ではありません。(一方、小さなサンプルでは、​​良い大きなp値はあまり快適ではありません。どちらの場合でも、テストは正しい質問に答えません。)

2サンプルのt検定と同様に、ANOVAの残差標準誤差とdfの推定値に対してWelch-Satterthwaiteタイプの調整があることに注意してください。

  1. ウィルコクソンのようなノンパラメトリックテストを使用します(もしそうなら、どれですか?)。

ロケーションシフトの選択肢に興味があるなら、あなたはまだ一定の広がりを仮定しています。もっと一般的な選択肢に興味があるなら、おそらくそれを検討するかもしれません。Wilcoxon検定に相当するk標本はクラスカルワリス検定です。

ANOVAの結果に対して何らかの修正を行う

Welch-Satterthwaiteの検討に関する上記の提案を参照してください。これは「一種の修正」です。

(あるいは、ANOVAをペアワイズウェルチタイプのt検定のセットとしてキャストすることもできます。この場合、Bonferroniまたは類似のものを調べたいと思うでしょう)

また、平均と分散が相関している(つまり、両方が一緒に増加する)場合を除き、分散不均一性はANOVAにとってそれほど大きな問題ではないことを示唆するいくつかの記事を読みました。

そのようなものを引用する必要があります。t検定で多くの状況を見てきたので、それが明らかに真実だとは思わないので、なぜそう思うのかを知りたい。おそらく、状況は何らかの形で制限されています。ただし、一般化された線形モデルがそのような状況に役立つことが多いため、そうであるといいでしょう。

最後に、私はこのレビューを査読付きジャーナルでの出版のために行っていることを付け加えなければならないので、私が決めようとするアプローチはどれも査読者に合格しなければなりません。

レビュー担当者を満足させるものを予測するのは非常に困難です。私たちのほとんどは、木を使用していません。


12

実際、単純な線形モデル(たとえば、一元配置または二元配置のANOVAのようなモデル)で不均一分散を処理することそれほど難しくありません

ANOVAの堅牢性

第一に、他の人が注目しているように、ANOVAは、特にほぼバランスの取れたデータ(各グループの観測数が等しい)がある場合、等分散の仮定からの偏差に対して驚くほど堅牢です。一方、等分散の予備検定はそうではありません(ただし、Leveneの検定は、教科書で一般的に教えられているF検定よりもはるかに優れています)。ジョージ・ボックスが言ったように:

変動の予備テストを行うことは、手linerぎボートに乗って海に出て、オーシャンライナーが港を出るのに十分穏やかな状態であるかどうかを調べるようなものです!

ANOVAは非常に堅牢ですが、不均一性を考慮に入れるのは非常に簡単ですが、そうしない理由はほとんどありません。

ノンパラメトリック検定

meanの違いに本当に興味がある場合、ノンパラメトリック検定(Kruskal–Wallis検定など)は実際には役に立ちません。それらはグループ間の違いをテストします、一般的には手段の違いをテストしません

サンプルデータ

ANOVAを使用したいが、分散が等しいという仮定が正しくないデータの簡単な例を生成してみましょう。

set.seed(1232)
pop = data.frame(group=c("A","B","C"),
                 mean=c(1,2,5),
                 sd=c(1,3,4))
d = do.call(rbind, rep(list(pop),13))
d$x = rnorm(nrow(d), d$mean, d$sd)

3つのグループがあり、平均と分散の両方に(明確な)違いがあります。

stripchart(x ~ group, data=d)

サンプルデータを示すストリップチャート。

分散分析

当然のことながら、通常のANOVAはこれを非常にうまく処理します。

> mod.aov = aov(x ~ group, data=d)
> summary(mod.aov)
            Df Sum Sq Mean Sq F value  Pr(>F)    
group        2  199.4   99.69   13.01 5.6e-05 ***
Residuals   36  275.9    7.66                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

それで、どのグループが違いますか?TukeyのHSDメソッドを使用してみましょう。

> TukeyHSD(mod.aov)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = x ~ group, data = d)

$group
        diff        lwr      upr     p adj
B-A 1.736692 -0.9173128 4.390698 0.2589215
C-A 5.422838  2.7688327 8.076843 0.0000447
C-B 3.686146  1.0321403 6.340151 0.0046867

Pの 0.26 -値、我々は、グループAとBの間の(平均の)任意の違いを主張することはできませんそして、私たちがしてもいなかった私たちは3つの比較をしたことを考慮し、我々は低得ないでしょうPを -値(P  = 0.12):

> summary.lm(mod.aov)
[…]
Coefficients:
            Estimate Std. Error t value  Pr(>|t|)    
(Intercept)   0.5098     0.7678   0.664     0.511    
groupB        1.7367     1.0858   1.599     0.118    
groupC        5.4228     1.0858   4.994 0.0000153 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.768 on 36 degrees of freedom

何故ですか?プロットに基づいて、そこにあるかなり明確な違い。その理由は、ANOVAは各グループで等しい分散を仮定し、共通の標準偏差2.77を推定するためです(「残差標準誤差」としてsummary.lm表ます。または、残差平均平方(7.66)の平方根ANOVAテーブル)。

しかし、グループAの(人口)標準偏差は1であり、2.77のこの過大評価により、統計的に有意な結果を得ることが(不必要に)難しくなります。

不等分散の「ANOVA」

それでは、分散の違いを考慮した適切なモデルをどのように適合させるのでしょうか?Rでは簡単です。

> oneway.test(x ~ group, data=d, var.equal=FALSE)
    One-way analysis of means (not assuming equal variances)

data:  x and group
F = 12.7127, num df = 2.000, denom df = 19.055, p-value = 0.0003107

したがって、等分散を仮定せずにRで単純な一元配置 'ANOVA'を実行する場合は、この関数を使用します。基本的に、t.test()不等分散の2つのサンプルの(Welch)の拡張です。

残念ながら、それは動作しませんTukeyHSD()(あるいは他のほとんどの機能は、あなたが上で使用aovするオブジェクト)私たちはかなり確信してそこにいるようにしても、あるグループの違いは、私たちが知らないところ、彼らはあります。

不均一分散のモデリング

最善の解決策は、分散を明示的にモデル化することです。また、Rでは非常に簡単です。

> library(nlme)
> mod.gls = gls(x ~ group, data=d,
                weights=varIdent(form= ~ 1 | group))
> anova(mod.gls)
Denom. DF: 36 
            numDF  F-value p-value
(Intercept)     1 16.57316  0.0002
group           2 13.15743  0.0001

もちろん、まだ大きな違いがあります。ただし、グループAとグループBの違いも静的に重要になっています(P  = 0.025)。

> summary(mod.gls)
Generalized least squares fit by REML
  Model: x ~ group
  […]
Variance function:
 Structure: Different standard
            deviations per stratum
 Formula: ~1 | group 
 Parameter estimates:
       A        B        C 
1.000000 2.444532 3.913382 

Coefficients:
               Value Std.Error  t-value p-value
(Intercept) 0.509768 0.2816667 1.809829  0.0787
groupB      1.736692 0.7439273 2.334492  0.0253
groupC      5.422838 1.1376880 4.766542  0.0000
[…]
Residual standard error: 1.015564 
Degrees of freedom: 39 total; 36 residual

したがって、適切なモデルを使用すると役立ちます。また、(相対)標準偏差の推定値が得られることに注意してください。グループAの推定標準偏差は、結果の下部、1.02にあります。グループBの推定標準偏差はこれの2.44倍、つまり2.48であり、グループCの推定標準偏差も同様に3.97です(intervals(mod.gls)グループBとCの相対標準偏差の信頼区間を取得するためのタイプ)。

複数のテストの修正

ただし、実際には複数のテストを修正する必要があります。これは、「multcomp」ライブラリを使用すると簡単です。残念ながら、「gls」オブジェクトの組み込みサポートがないため、最初にヘルパー関数を追加する必要があります。

model.matrix.gls <- function(object, ...)
    model.matrix(terms(object), data = getData(object), ...)
model.frame.gls <- function(object, ...)
  model.frame(formula(object), data = getData(object), ...)
terms.gls <- function(object, ...)
  terms(model.frame(object),...)

仕事に取り掛かりましょう:

> library(multcomp)
> mod.gls.mc = glht(mod.gls, linfct = mcp(group = "Tukey"))
> summary(mod.gls.mc)
[…]
Linear Hypotheses:
           Estimate Std. Error z value Pr(>|z|)    
B - A == 0   1.7367     0.7439   2.334   0.0480 *  
C - A == 0   5.4228     1.1377   4.767   <0.001 ***
C - B == 0   3.6861     1.2996   2.836   0.0118 *  

グループAとグループBの統計的有意差はまだあります!☺さらに、グループ平均間の差について(同時に)信頼区間を取得することもできます。

> confint(mod.gls.mc)
[…]
Linear Hypotheses:
           Estimate lwr     upr    
B - A == 0 1.73669  0.01014 3.46324
C - A == 0 5.42284  2.78242 8.06325
C - B == 0 3.68615  0.66984 6.70245

ほぼ(ここでは正確に)正しいモデルを使用して、これらの結果を信頼できます!

この単純な例では、グループCのデータは、グループAとBの違いに関する情報を実際には追加しないことに注意してください。多重比較のために修正されたペアワイズt検定を使用することもできます。

> pairwise.t.test(d$x, d$group, pool.sd=FALSE)
    Pairwise comparisons using t tests with non-pooled SD 

data:  d$x and d$group 

  A       B      
B 0.03301 -      
C 0.00098 0.02032

P value adjustment method: holm 

ただし、より複雑なモデル、たとえば双方向モデル、または多くの予測子を含む線形モデルの場合、GLS(一般化最小二乗法)を使用し、分散関数を明示的にモデリングするのが最適なソリューションです。

そして、分散関数は単に各グループで異なる定数である必要はありません。構造を課すことができます。たとえば、各グループの平均のべき乗として分散をモデル化できます(したがって、1つのパラメーター、指数のみを推定する必要があります)。これはすべてGLS(およびgls()R)で非常に簡単です。

一般化最小二乗法は、IMHOの非常に不十分な統計モデリング手法です。モデルの仮定からの逸脱を心配する代わりに、それらの逸脱をモデル化してください!


1
答えてくれてありがとう!不等分散ANOVA(Welch ANOVA)のoneway.test()およびgls()の結果について理解していません。oneway.test()のp値は、p値= 0.0003107です。しかし、gls(x〜group、data = d、weights = varIdent(form =〜1 | group))のp値は0.0001です。これら2つの結果が異なるのはなぜですか?
WCMC

2
複数のテストの修正に対する懸念が高まっています。修正していないp値と比較した回数を報告する方がより透明だと思います。特に、Rでそれらをテストするときにすべてのペアワイズ比較に関心があるわけではないため、関心のない比較を考慮して修正が行われます。
-Nakx

7
  1. 実際に、許容可能な正規分布を生成するデータの変換が行われる場合があります。もちろん、今では推論は変換されていないデータではなく、変換されたデータに関するものです。

  2. あなたが一元配置分散分析について話していると仮定すると、クラスカル・ワリス検定は、一元配置分散分析の適切なノンパラメトリックなアナログです。Dunnの検定(ないありふれた順位和検定)は、おそらくのための最も一般的なノンパラメトリックテストが適切である事後な(厳密に、より強力な拒否の後にダンのテストよりもコノバー・イマンテストなどの他のテストがあるが、ペアワイズ多重比較kruskal-Wallis)、およびDwass-Steele-Crichtlow-Flignerテスト。

  3. α

ANOVAは、グループ内およびグループ分散間の比率に基づいています。この文脈で不均一分散性が何を意味するのかは完全にはわかりませんが、グループ間の不均等な分散を意味する場合、それはテストの帰無仮説の論理を根本的に壊すように思えます。

「ダンのテスト」に対するGoogle Scholarの簡単なクエリと、専門分野からの一般的な用語は、公開されている多くの例を返すはずです。


参照資料

Conover、WJおよびIman、RL(1979)。複数比較手順について。テクニカルレポートLA-7677-MS、ロスアラモス科学研究所。

DEのCrichtlowとMAのFligner(1991)。一元配置分散分析における分布のない多重比較について統計におけるコミュニケーション—理論と方法、20(1):127。

ダン、OJ(1964)。ランク合計を使用した多重比較Technometrics、6(3):241–252。


2
わかりました、この答えに感謝します、しかし、私はあなたが何を言っているかについて完全に明確ではありません。「不均一分散」に関しては、「ランダム変数のコレクションは、他とは異なるばらつきを持つ部分母集団がある場合、ランダム変数の集合は不均一分散です。ここで、「ばらつき」は分散または統計的分散のその他の尺度。」-ウィキペディア。私のデータでは、サブグループの分散は等しくない(Leveneのテストによる)ので、それらを不均一分散と説明しました。これは正しくありませんか?
ジャスマックス

1
私が本当に議論しようとしているのは、教科書の統計と現実の世界とのギャップです。すべての教科書には「分散は分散分析で等しくなければならない」と書かれていますが、もちろん決して同じではありません。それで、特定のポイントで勝手にカットオフし、別のテストに切り替えますか?私の分野(植物生物学)では、ほとんどの人は、何も考えずに使用するために訓練されたテストを使用します。私は本当にそれに満足していません。統計の「実用的な」使用法、つまり、いつ、なぜ使用するテストを検討するかについての本/ウェブサイトへの提案が欲しいです。Dunnの提案に感謝します。
ジャスマックス

2
ああ、等分散の仮定があり、人口はない分散サンプル分散。あなたは、母集団の分散が等しいことを推測することができます...眼球テストを介して、または他の、たとえば統計的テストによって。
アレクシス

1
サンプルの分散を評価することによって、母分散について何か知っていることはありますか?私は、Leveneの検定p-valを、「母集団の分散が等しいと仮定し、サンプル分散がこれほど大きく異なるオッズは何であるか」と解釈します。p-valが低い場合、母集団の分散が等しく、ANOVAを使用できないという仮説を拒否します。Kruskal-Wallaceは優れた代替手段のように思えますが、ANOVAの前提を満たすようにデータを変換する方が望ましいですか?
ジャスマックス

1
また、Leveneの検定、p <.05はこの決定の適切な検定およびカットオフですか?オブライエン、バートレットについてはどうでしょうか...これらのテストの結果は大きく異なる可能性があり、どちらを使用するかは本当にわかりません。だから、最も保守的であるように見えるので、リーベンに行きます。しかし、おそらくそれはやりすぎです-ANOVAを放棄するには速すぎるかもしれないので、分析の統計力を不必要に低下させるテストに切り替えています。
ジャスマックス

1

あなたはフットワークをしていてベストを尽くしているように聞こえますが、あなたの努力があなたの論文をレビュアーに渡すのに十分ではないのではないかと心配しています。非常に現実的な問題です。すべての研究者は、境界線であると思われる分析や、時には率直に言って仮定に違反する分析に苦労していると思います。結局のところ、たとえば各グループに6〜7匹のマウスがいる3つの小さなグループのマウスの治療効果を評価する何百万もの記事があります。そのような論文でAnovaの仮定が満たされているかどうかを知る方法!

特に心血管の病態生理学の分野で多くの論文をレビューしましたが、実際に読んだ記事でデータを信頼できるかどうかを100%確信することは決してありません。しかし、レビュアーとしての私にとって、問題は科学の非常に多くのレベルで発生する可能性があると思う傾向があり、おそらく統計を深く掘り下げることにはほとんど意味がありません。結局、データセット全体を作成することができ、百万年後に伝えることができます。したがって、この分野の研究には常に信頼の要素があり、研究者は決してそれを濫用してはなりません。

私が提供する最も現実的な提案は、提出する前に非常に慎重にすべてを熟考し、レビュアーからの質問に誠実に答えられるようにする必要があるということです。あなたが最善を尽くす限り、あなたの意図は正直であり、あなたは夜よく眠れます。あなたは大丈夫だと思います。


2
私は、製作物を見つけられないことに同意するかどうかはわかりません。私は以前にそのようなものを見つけました。
アレクシス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.