ランダム効果因子のグループの最小推奨数は何ですか?


26

Rlme4)で混合モデルを使用して、いくつかの反復測定データを分析しています。応答変数(糞の繊維含有量)と3つの固定効果(体重など)があります。私の研究には参加者が6人しかいませんが、各参加者に対して16回の反復測定があります(ただし、2回の反復は12回のみです)。被験者は、異なる「治療」で異なる組み合わせの食物を与えられたトカゲです。

私の質問は、サブジェクトIDをランダム効果として使用できますか?

これは、被験者のランダムにサンプリングされた性質と被験者間の観察が被験者間の観察より密接に相関するという事実を考慮するための、縦方向の混合効果モデルにおける通常の行動コースであることを知っています。ただし、サブジェクトIDをランダム効果として扱うには、この変数の平均と分散を推定する必要があります。

  • 被験者は6人(この因子の6つのレベル)のみであるため、これは平均と分散の正確な特性を得るのに十分ですか?

  • この点に関して、各被験者について非常に多くの反復測定があるという事実は、この点で役立ちますか(それがどのように重要であるかわかりません)。

  • 最後に、サブジェクトIDをランダムエフェクトとして使用できない場合、固定エフェクトとしてサブジェクトIDを含めることで、繰り返し測定しているという事実を制御できますか?

編集:私は、「できます」と言ったときに、サブジェクトIDをランダム効果として使用することを意味します。わずか2レベルの係数でモデルを適合できることは知っていますが、これは確実に防御できないでしょうか?被験者をランダムな効果として扱うことを考えるのは、どの時点で賢明になりますか?文献では、5〜6レベルが下限であるとアドバイスされているようです。ランダム効果の平均と分散の推定値は、15以上の因子レベルが存在するまではあまり正確ではないと思われます。

回答:


21

簡単な答え:はい、6レベルのランダム効果としてIDを使用できます。

少し長めの回答:@BenBolkerのGLMM FAQは、(特に)見出しの下に「ファクターxxxを固定またはランダムとして扱うべきですか?

「古典的な」モーメント法の推定ではなく「現代」の混合モデル推定に特に関連する1つのポイントは、実用的な目的のために、適度な数の変量効果レベル(ブロックなど)が必要であるということです。少なくとも5または6。

下限にありますが、右側にあります。


12

マルチレベルモデルの最小グループ数を把握するために、Gelman and Hill(2007)の書籍「Data Analysis Using Regression and Mulitilevel / Hierarchical models」を参照しました。

それらは、第11章、セクション5(247ページ)でこのトピックに対処しているようで、5グループ未満の場合、マルチレベルモデルは通常、従来のモデルにほとんど追加しないと書いています。ただし、マルチレベルモデルを適用するリスクはほとんどないと書いているようです。

同じ著者は、第12章、セクション9(275〜276ページ)でこのトピックに戻るようです。そこで、彼らは、マルチレベルモデルの最小グループ数に関するアドバイスが間違っていると書いています。そこで再び彼らは、グループの数が少ない場合、マルチレベルモデルは従来のモデルにほとんど追加しないことが多いと言います。ただし、彼らはまた、マルチレベルモデルは、プールなし回帰(プールなしは、古典的な回帰でグループインジケータが使用されることを意味するように見える)よりも悪化しないはずだと書いています。

275〜276ページで、著者は、1つまたは2つのグループ(男性と女性など)の場合に特定のサブセクションを持っています。ここで彼らは典型的にはモデルを古典的な形で表現すると書いている。ただし、彼らは、1つまたは2つのグループのみでもマルチレベルモデリングが役立つ可能性があると述べています。彼らは、1つまたは2つのグループを使用して、マルチレベルモデリングが古典的な回帰に減少すると書いています。

これからの私の印象は、古典的な回帰が一連のモデルの一端、つまりマルチレベルモデルの特別なケースであるということです。

上記に基づいて、私の印象では、古典的な回帰とマルチレベルモデリングは、グループが2つしかない場合にほぼ同一の推定値を返し、1つ、2つ、3つ、4つ、5つ、または6つのグループのみを持つマルチレベルモデルを使用しても大丈夫だという印象です。

将来的には、R2つのグループを使用するときに両方のアプローチで得られた推定値を比較するコードと小さなデータセットを使用して、この答えを修正しようとします。


10

価値のあることについては、比較的簡単なLMMの分散推定の安定性を調べるために、少しのシミュレーション研究を行いました(sleepstudyから入手可能なデータセットを使用lme4)。最初の方法はngroups、被験者の数に対して可能なすべての被験者の組み合わせを生成し、可能な組み合わせごとにモデルを再構成します。2番目は、被験者のいくつかのランダムなサブセットを取ります。

library(lme4)
library(ggplot2)
library(tidyr)

m0 <- lmer(Reaction ~ Days + (1|Subject), data = sleepstudy,
           control = lmerControl(optimizer = "nloptwrap"))
# set the number of factor levels
ngroups <- 3:18 
# generate all possible combinations
combos <- lapply(X = ngroups, 
                 FUN = function(x) combn(unique(sleepstudy$Subject), x)) 

# allocate output (sorry, this code is entirely un-optimized)
out <- list(matrix(NA, ncol(combos[[1]]), 1), matrix(NA, ncol(combos[[2]]), 1),
            matrix(NA, ncol(combos[[3]]), 1), matrix(NA, ncol(combos[[4]]), 1),
            matrix(NA, ncol(combos[[5]]), 1), matrix(NA, ncol(combos[[6]]), 1),
            matrix(NA, ncol(combos[[7]]), 1), matrix(NA, ncol(combos[[8]]), 1),
            matrix(NA, ncol(combos[[9]]), 1), matrix(NA, ncol(combos[[10]]), 1),
            matrix(NA, ncol(combos[[11]]), 1), matrix(NA, ncol(combos[[12]]), 1),
            matrix(NA, ncol(combos[[13]]), 1), matrix(NA, ncol(combos[[14]]), 1),
            matrix(NA, ncol(combos[[15]]), 1), matrix(NA, ncol(combos[[16]]), 1))
# took ~ 2.5 hrs on my laptop, commented out for safety
#system.time(for(ii in 1:length(combos)) {
#    for(jj in 1:ncol(combos[[ii]])) {
#    sls <- sleepstudy[sleepstudy$Subject %in% combos[[ii]][,jj],]
#    out[[ii]][jj] <- attr(VarCorr(update(m0, data = sls))$Subject, 'stddev')
#        }
#    })

# pad with zeros, not all were equal
# from http://stackoverflow.com/questions/11148429/r-convert-asymmetric-list-to-matrix-number-of-elements-in-each-sub-list-diffe
max.len <- max(sapply(out, length))
corrected.list <- lapply(out, function(x) {c(x, rep(NA, max.len - length(x)))})
mat <- do.call(rbind, corrected.list)
mat <- data.frame(t(mat))
names(mat) <- paste0('s',3:18)
mat <- gather(mat, run, value)

ggplot(mat, aes(x = value, fill = run)) + 
    geom_histogram(bins = 60) +
    geom_vline(xintercept = 37.12, linetype =  'longdash', 
               aes(colour = 'original')) +
    facet_wrap(~run, scales = 'free_y') +
    scale_x_continuous(breaks = seq(0, 100, by = 20)) + 
    theme_bw() + 
    guides(fill = FALSE)

黒い点線は分散の元の点の推定値であり、ファセットは異なる数の被験者(s33人の被験者のグループ、s44人など)を表します。 ここに画像の説明を入力してください

そして別の方法:

ngroups <- 3:18
reps <- 500
out2<- matrix(NA, length(ngroups), reps)

for (ii in 1:length(ngroups)) {
    for(j in 1:reps) {
        sls <- sleepstudy[sleepstudy$Subject %in% sample(unique(sleepstudy$Subject), ngroups[i], replace = FALSE),]
        out2[i,j] <- attr(VarCorr(update(m0, data = sls))$Subject, 'stddev')
    }
}
out2 <- data.frame(t(out2))
names(out2) <- paste0('s',3:18)
out2 <- gather(out2, run, value)

ggplot(out2, aes(x = value, fill = run)) + 
    geom_histogram(bins = 60) +
    geom_vline(xintercept = 37.12, linetype =  'longdash', 
               aes(colour = 'original')) +
    facet_wrap(~run, scales = 'free_y') +
    scale_x_continuous(breaks = seq(0, 100, by = 20)) + 
    theme_bw() + 
    guides(fill = FALSE)

ここに画像の説明を入力してください

(この例では、とにかく)少なくとも14人の被験者がいなければ、分散は実際には安定しないようです。


1
+1。もちろん、被験者の数が少ないほど、分散推定量の分散は大きくなります。しかし、これがここで重要なことだとは思いません。問題は、何人の被験者が理にかなった結果を得ることができるかということです。「不合理な」結果をゼロ分散の取得と定義すると、シミュレーションではn = 5以下で頻繁に発生します。n = 6またはn = 7から開始すると、分散の正確な0推定値はほとんど得られません。つまり、モデルは非縮退解に収束します。私の結論は、n = 6が境界線として受け入れられるということです。
アメーバは、モニカを復活

1
ところで、これはrpubs.com/bbolker/4187に沿っています
アメーバは、モニカを復活させる

8

AngristとPischkeの「Mostly Harmless Econometrics」には、「42個未満のクラスター」というタイトルのセクションがあり、そこで冗談を言って言っています。

したがって、...生命、宇宙、すべてに対する答えは42であるというthatに続いて、質問は次のとおりであると考えます。標準的なクラスター調整[GEEの分散推定量に似た]を使用して信頼できる推論に十分なクラスターがいくつあるか?

私の計量経済学のインストラクターがあなたのような質問に答えたのは、「アメリカは自由な国です。好きなことは何でもできます。しかし、論文を公開したい場合は、自分がしたことを守る必要があります。 」言い換えると、6件のサブジェクトでRまたはStataまたはHLMまたはMplusまたはSAS PROC GLIMMIXコードを実行できます(選択したパッケージが実行されない場合、これらの代替パッケージに切り替えます)が、このアプローチを擁護し、漸近的なテストを正当化するのは非常に困難です。

デフォルトでは、変数をランダムな勾配として含めることは、それを固定効果としても含むことを意味し、これを平均のランダム効果としてのみ必要とする場合は、多くの構文フープをジャンプする必要があると思いますゼロ。ソフトウェア開発者があなたのために行った賢明な選択です。


1
質問に対する答えは、ある程度までは「弦の長さはどれくらいか」であるとあなたは主張します。ただし、15〜20未満のサンプルから平均または分散を推定することにはあまり自信がないので、ランダム効果のレベルに同じ経験則は適用されません。縦断的研究で被験者IDが固定さたランダムな効果として被験者IDを含むのを見たことはありません。これは一般的な習慣ですか?
クリス

混合モデルの少数の被験者の上では、ランダム効果は観察されないため、データからそれらをいじる必要があり、それを確実に行うためには、平均値を推定する場合よりも比較的多くのデータが必要になると考えられますすべてが観察されたときの分散。したがって、42対15-20 :)。ランダムな効果のみと考えるサブジェクトIDが正しいため、ランダムな勾配を意味すると思います。そうでない場合、それらは識別されません。ちなみに、エコノミストはランダム効果を信じておらず、「固定効果」と呼ばれるもの、つまり被験者内推定値をほぼ独占的に公開しています。
StasK

2
@StasKを+1すると、対処が非常に難しい質問に対する非常に良い回答が得られます。しかし、不必要な皮肉の色合いがあり、OPをもう少し尊重するように答えを編集することを検討するかもしれません。
マイケルR.チャーニック

@Michael、あなたはおそらくこれが不機嫌そうな答えであり、おそらく不必要にそうだと思うでしょう。しかし、OPは彼らが聞きたい答えを受け入れたので、彼はこれについて解決策を得ました。より深刻な答えは、優れたシミュレーションの証拠または高次の漸近解析のいずれかを指しますが、残念ながら私はそのような参照を認識していません。
StasK

3
価値があるのは、「42」のマジックナンバーはランダム効果が正当化されるときではなく、有限サイズの修正を心配せずに逃げることができるときだと思います(例えば、有効な分母の自由度/ Kenward-Roger修正/他の同様のアプローチ)。
ベンボルカー

7

また、ベイジアン混合モデルを使用することもできます。その場合、95%の予測信頼区間の計算において、ランダム効果の推定の不確実性が完全に考慮されます。たとえば、新しいRパッケージbrmsと関数をbrm使用すると、lme4シンタックスがほぼ同じであるため、頻繁な混合モデルからベイジアンモデルへの非常に簡単な移行が可能になります。


4

6レベルのみのランダム効果モデルは使用しません。6レベルのランダム効果を使用するモデルは、多くの統計プログラムを使用して実行できる場合があり、時には公平な推定値を提供しますが、

  1. 統計コミュニティでは、10〜20が最小数であるというarbitrary意的なコンセンサスがあると思います。研究を公開したい場合は、統計レビューなしでジャーナルを探すことをお勧めします(またはかなり洗練された言語を使用して決定を正当化することができます)。
  2. クラスターが非常に少ないため、クラスター間の分散の推定が不十分になる可能性があります。通常、クラスター間分散の推定値が低いと、対象の係数の標準誤差の推定値が低くなります。(ランダム効果モデルは、理論的に無限になるクラスターの数に依存します)。
  3. 多くの場合、モデルは単に収束しません。モデルを実行してみましたか?モデルが収束するのは、被験者あたり12〜16の測定値だけで驚いたでしょう。この種のモデルを収束させることができたとき、クラスターごとに何百もの測定がありました。

この問題は、フィールドのほとんどの標準的な教科書で対処されており、あなたは質問でそれらに対処しました。新しい情報を提供しているとは思わない。


技術的な内容に関連した理由でこれは反対票になりましたか?
Nブラウワー

どのタイプのデータを使用していますか?モデルが個人ごとに12〜16メジャーで収束すると聞いて驚くのはなぜかわかりません。結果のモデルのバイアスについてコメントすることはできませんが、lme4混合モデルで収束の問題が発生したことはなく、OPと同様のサンプルサイズで実行することがよくあります(生物学データセットも使用しています)。
RTbecard

1

最初の質問から長い時間が経ちましたが、モデルの選択に関連するいくつかの点を追加するかもしれないと考えました。

1-モデルが特定されている限り(つまり、パラメータ空間に自由度がある場合)、モデルに適合するようにTRYできる必要があります。最適化方法に応じて、モデルは収束する場合と収束しない場合があります。いずれにせよ、私は1つまたは2つ以上のランダムな効果、および間違いなく1つ以上のクロスレベルの相互作用を含めようとしません。ここで提示する問題の特定のケースでは、トカゲ固有の特性(年齢、サイズなど)と治療/測定特性の相互作用が疑われる場合、グループサイズ6では十分に正確な推定を行うことができない場合があります。

2-いくつかの回答が述べているように、収束が問題になる場合があります。しかし、私の経験では、社会科学のデータは測定の問題のために大きな収束問題を抱えていますが、生命科学、特に生化学の繰り返し測定では標準誤差がはるかに小さくなっています。それはすべて、データ生成プロセスに依存します。社会的および経済的なデータでは、さまざまな抽象化レベルで作業する必要があります。生物学的および化学的、そして最も確かに天文学的なデータの測定では、測定誤差はそれほど問題ではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.