Thank you, Henrik!  This is very useful!

Best

Roger

> On Aug 25, 2015, at 5:32 AM, Henrik Singmann <singm...@psychologie.uzh.ch> 
> wrote:
> 
> Dear list, (I apologize for crossposting with R-SIG-MIXED)
> 
> I have released a new version of afex (0.14-2) to CRAN with several new 
> features which may be of interest.
> 
> The most important feature for this audience is perhaps that afex can now 
> correctly suppress the estimation of correlations among factor random slopes 
> using the "||" notation. This is achieved by first creating the model matrix 
> for the random factors and then passing the so created numerical variables 
> instead of the original factors. For convenience, I have created a wrapper 
> function, lmer_alt(), which expands the random effects in such a way but 
> otherwise behaves like lmer (or glmer if a family argument is passed). That 
> also means it does not enforce a specific factor coding (in contrast to the 
> other afex functions that per default use sum-to-zero contrasts).
> The following example (from Reinhold Kliegl,
> https://rpubs.com/Reinhold/22193) shows this:
> 
> require(afex)
> data("Machines", package = "MEMSS")
> contrasts(Machines$Machine) <- contr.treatment(3)
> m1a <- lmer(score ~ Machine + (Machine|Worker), Machines, REML=FALSE)
> summary(m1a)$varcor
> ## Groups   Name        Std.Dev. Corr
> ## Worker   (Intercept) 3.71695
> ##          Machine2    5.35595   0.488
> ##          Machine3    3.35308  -0.363  0.296
> ## Residual             0.96158
> m1b <- lmer(score ~ Machine + (Machine||Worker), Machines, REML=FALSE)
> summary(m1b)$varcor
> ## Groups   Name        Std.Dev. Corr
> ## Worker   (Intercept) 0.49674
> ## Worker.1 MachineA    3.68361
> ##          MachineB    7.85482  0.805
> ##          MachineC    3.96965  0.618 0.772
> ## Residual             0.96158
> m1c <- lmer_alt(score~Machine+(Machine||Worker), Machines, REML=FALSE)
> summary(m1c)$varcor
> ## Groups   Name         Std.Dev.
> ## Worker   (Intercept)  3.71176
> ## Worker.1 re1.Machine2 5.36912
> ## Worker.2 re1.Machine3 3.30637
> ## Residual              0.96257
> 
> As can be seen, lmer_alt behaves like one would be expect and not like lmer. 
> This behavior can also be activated for the afex mixed() function by setting 
> expand_re = TRUE.
> 
> Furthermore, afex is now fully integrated with lsmeans for all types of 
> follow-up tests and contrasts. This is particularly noteworthy for the ANOVA 
> functions (which have been renamed to aov_ez, aov_car, and aov_4) which now 
> return per default an object of class "afex_aov". This object contains the 
> ANOVA estimated with both car::Anova (for correct Type II/II tests) and 
> stats::aov (for follow-up tests) and can be directly passed to lsmeans. This 
> means one can directly run any type of post-hoc tests/contrasts on ANOVA 
> independent of whether or not these tests relate to between- or 
> within-factors or a mix thereof. The new vignette shows this in detail:
> https://cran.rstudio.com/web/packages/afex/vignettes/anova_posthoc.html
> 
> The full list of changes is available here:
> https://cran.rstudio.com/web/packages/afex/NEWS
> 
> afex has also moved to github now (where all the cool kids are) so I am happy 
> for any comments there (https://github.com/singmann/afex), here, or per mail.
> 
> Cheers,
> Henrik
> 
> PS: Due to a bug in the current CRAN version of stringi the following warning 
> message appears regularly in afex, but can be safely ignored:
> In stri_c(..., sep = sep, collapse = collapse, ignore_null = TRUE) :
>  longer object length is not a multiple of shorter object length
> 
> Updating stringi from github (https://github.com/Rexamine/stringi/) removes 
> this warning.
> 


Reply via email to