Bug in lme4: attr(mod@frame, "na.action") is not re-initialized to NULL
I think I agree that this is a bug; in our defense, there are *lots* of possible permutations of when and how NAs can show up in data. What surprises me slightly is that this doesn't show up in any of the permutations tested at https://github.com/lme4/lme4/blob/master/inst/tests/napredict2.R ...
On 14-03-11 04:26 PM, Alexandre Courtiol wrote:
Yes, but it does not solve the problem for all function that use a direct call to refit, e.g. PBmodcomp... So it would be beter that the attributes of the model frame really correspond to the model frame, no? alex 2014-03-11 21:16 GMT+01:00 Steve Walker <steve.walker at utoronto.ca>:
This seems to work: refit(mod, simulate(mod, na.action = na.exclude)) Cheers, Steve On 3/11/2014, 3:51 PM, Alexandre Courtiol wrote:
I think I found a bug... and it may affect several versions of lmer (but I did not try the one before 1.0). The bug is that the attribute na.action of the model frame is not re-initialized to NULL (both in lmer and glmer). example: data <- data.frame(y=rnorm(100), K=factor(rep(1:10,10))) data[3, "y"] <- NA library(lme4) mod <- lmer(y~1+(1|K), data=data) dim(mod at frame) # 99 2 The model frame has excluded the line as it should attr(mod at frame, "na.action") # 3 The value 3 is still considered missing while it should not This feature is slightly annoying because it creates the function refit to crash and others using refit (I came to discover that from a crash in PBmodcomp from pbkrtest)... example: refit(mod, simulate(mod)) # CRASH attr(mod at frame,"na.action") <- NULL # fast and dirty patch... refit(mod, simulate(mod)) # works Thanks to the lmer team for your great work! PS: If you don't see that as a bug, please send an informative warning. sessionInfo()
R version 3.0.2 (2013-09-25) Platform: x86_64-pc-linux-gnu (64-bit) attached base packages: [1] parallel stats graphics grDevices utils datasets methods [8] base other attached packages: [1] pbkrtest_0.3-8 MASS_7.3-29 lme4_1.1-4 Rcpp_0.11.0 Matrix_1.1-2 loaded via a namespace (and not attached): [1] grid_3.0.2 lattice_0.20-27 minqa_1.2.3 [4] nlme_3.1-113 RcppEigen_0.3.2.0.3 splines_3.0.2 [7] tools_3.0.2