2017-03-15 2 views
1

K-Rの自由度の経験的分布を得ようとしている間にこの問題に陥る...lmerTest ::: anovaはデータセットの遅延読み込みを使用しますか?

これはかなり危険な振る舞いのようですか?それはバグを構成していますか?

再現例:

## import lmerTest package 
library(lmerTest) 

## an object of class merModLmerTest 
m <- lmer(Informed.liking ~ Gender+Information+Product +(1|Consumer), data=ham) 

# simulate data from fitted model 
simData=ham 
simData$Informed.liking=unlist(simulate(m)) 
# fit model to simulated data 
m1 <- lmer(Informed.liking ~ Gender+Information+Product +(1|Consumer), data=simData) 
stats:::anova(m1) 
lmerTest:::anova(m1) 

# simulate again, WITHOUT refitting 
simData$Informed.liking=unlist(simulate(m)) 
stats:::anova(m1) # same as before 
lmerTest:::anova(m1) # not same as before! 

答えて

0

私の応答は固体の答えではなく、拡張されたコメント構成するものではありません:これはかなり悪いに見える
を - 実際に私は、今日私が行っているほぼすべての分析を発見しました提出寸前のプロジェクトは、関連する動作がlmerTestであるために再実行する必要があります。
私が遭遇した問題は、lmerというモデルに合った短い関数を使って、coef(summary(model)) - シンプルなもの、2行のコードを返すときでした。しかし、この関数の入力はdataとなり、ワークスペースにはdataというデータフレームもありました。 lmerのフィッティング中に、summaryの間にワークスペースdata変数が使用されました(これはしばしば関数に渡されるデータフレームと同じではありません)が、無効なt値と誤ったp値につながる自由(推定値と標準誤差は問題ありませんでした)。
質問に答える:

これはかなり危険な動作のようですか?それはバグを構成していますか?

本当に危険なようですが、私はこのバグをdefinitellyと呼んでいます。

関連する問題