Hello everyone,
this another post on the maximal-random effect structure issue. (ie. non convergence with a maximal random effect structure) As an immediate disclaimer, this applies mainly to the use of LMER for hypothesis-testing experiments. I learned from Morgan Sonderegger that the non-convergence issue is probably related to the large number of correlations between random slopes that are estimated. Excluding these might hence be a solution and may in fact foster the use of LMER for factorial designs. However, two things may stand in the way: First, from a conceptual issue, does the exclusion of these correlations again lead to problem with false positive just as the exclusion of random slopes. Or stated otherwise, is the Maxima- Random-Effect-structure recommandations (as a German, I love long compounds) dependent on the random slopes alone, or is the inclusion of the correlation parameters necessary, too ? A second issue is practical, from two factors onwards, writing the formula gets annoying, the simple (1+factor1 * factor2 * factor3| subjects) has to be written as 6 terms ( (1|subject) + (0 + factor1| subject) ... + (0 + factor1:factor2:factor3) ). To solve this issue, I have written a script that allows to specify the random structure for two sampling levels. You can find it here: http://www.holgermitterer.eu/research.html. It should work with any number of factors, but only two sampling levels are possible. (For phonetic-convergence folk, I am happy to implement a third one if this seems useful) The script makes available a function that generates the call for an lmer with no correlation between random effects, and a call might look something like this: noCorrLmer = expLmer(dataframe = "bothGroups", dependent = "rtCorr", independent = c("lexicalC", "glottalC"), random1 = "subject", random2 = "target") which would generate an lmer call with this formula rtCorr ~ lexicalC * glottalC + (1 | subject) + (0 + glottalC | subject) + (0 + lexicalC | subject) + (0 + glottalC:lexicalC | subject) + (1 | target) + (0 + glottalC | target) + (0 + lexicalC | target) + (0 + glottalC:lexicalC | target) Data: bothGroups it also allows a more detailed specification if a given factor is not varied within subjects or items, if none is specified the default is that all fixed effcts and interactions vary over subject and items. In MatLab style, some help is supplied as comments on the first lines of the function. As this is my first real R-script, I would not mind getting feedback (any aspects, from style, usability, to actual correctness). Kind regards, Holger
