[R] no slot of name "fixef" for this object of class "lmerMod"

Thierry Onkelinx thierry.onkelinx at inbo.be
Fri Jul 3 19:53:22 CEST 2015


Yes, use fixef(mod) instead of mod op fixef. It is recommended to use the
accessor functions instead of reading the slots with the @.

​
ir. Thierry Onkelinx
Instituut voor natuur- en bosonderzoek / Research Institute for Nature and
Forest
team Biometrie & Kwaliteitszorg / team Biometrics & Quality Assurance
Kliniekstraat 25
1070 Anderlecht
Belgium

To call in the statistician after the experiment is done may be no more
than asking him to perform a post-mortem examination: he may be able to say
what the experiment died of. ~ Sir Ronald Aylmer Fisher
The plural of anecdote is not data. ~ Roger Brinner
The combination of some data and an aching desire for an answer does not
ensure that a reasonable answer can be extracted from a given body of data.
~ John Tukey
Op 3 jul. 2015 13:59 schreef "Iker Vaquero Alba" <karraspito op yahoo.es>:

>
>    Dear Thierry,
>
>    Thank you very much. Do you mean I should *add* a line to the function
> with the code "fixef(my.model)", retaining everything else, even the
> "beta0    <- as.numeric(mod op fixef)" line? Or should I replace something?
>    Also, when you say "fixef(my.model), do you mean "fixef(mod)" (as in my
> case "mod <- lmer(y ~ 1 + (1|group1)+(1|group2),verbose=FALSE)"?
>
>    Thank you very much again.
>    Iker
>
> __________________________________________________________________
>
>    Dr. Iker Vaquero-Alba
>    Daphne du Maurier
>    Centre for Ecology and Conservation
>    College of Life and Environmental Sciences
>    University of Exeter, Cornwall Campus
>    TR10 9FE
>    Penryn
>    U.K.
>
>
> http://biosciences.exeter.ac.uk/cec/staff/postgradresearch/ikervaquero-alba/
>
>    https://eric.exeter.ac.uk/repository/handle/10036/3381
>
>
>   ------------------------------
>  *De:* Thierry Onkelinx <thierry.onkelinx op inbo.be>
> *Para:* Iker Vaquero Alba <karraspito op yahoo.es>
> *CC:* r-help op r-project.org
> *Enviado:* Viernes 3 de julio de 2015 11:00
> *Asunto:* Re: [R] no slot of name "fixef" for this object of class
> "lmerMod"
>
> Dear Iker,
> The internals of the mer model have changed. Use fixef(your.model).
> Best regards,
>> ir. Thierry Onkelinx
> Instituut voor natuur- en bosonderzoek / Research Institute for Nature and
> Forest
> team Biometrie & Kwaliteitszorg / team Biometrics & Quality Assurance
> Kliniekstraat 25
> 1070 Anderlecht
> Belgium
> To call in the statistician after the experiment is done may be no more
> than asking him to perform a post-mortem examination: he may be able to say
> what the experiment died of. ~ Sir Ronald Aylmer Fisher
> The plural of anecdote is not data. ~ Roger Brinner
> The combination of some data and an aching desire for an answer does not
> ensure that a reasonable answer can be extracted from a given body of data.
> ~ John Tukey
> Op 2 jul. 2015 22:17 schreef "Iker Vaquero Alba" <karraspito op yahoo.es>:
>
>
>    Hello everyone.
>    I am trying to re-analyse some data with an R function I last used in
> 2011. Everything seemed to work fine then, but now, using the same code, it
> gives me this error:
>    Error in R.pe(y, group1, group2, returnR = FALSE) :
>   no slot of name "fixef" for this object of class "lmerMod"
>    This is the part of the function that I think is relevant for the
> problem:
>    # preparation
>     #n <- rowSums(y)
>     N <- length(y)
>     k <- length(unique(group1)) # clone
>     g <- length(unique(group2)) # round
>     #
>     require(lme4)
>     # functions
>     R.pe <- function(y, group1, group2, returnR=TRUE) {
>      mod <- lmer(y ~ 1 + (1|group1)+(1|group2),verbose=FALSE)
>         VarComp  <- lme4::VarCorr(mod)
>         beta0    <- as.numeric(mod op fixef)
>         var.e <- attr(VarComp, "sc")^2 # residual variance
>         var.a1 <- (as.numeric(VarComp[1])) # e.g. get clone R
>         var.a2 <- (as.numeric(VarComp[2])) # e.g. get round R
>             R.group1  <- var.a1/(var.a1+var.e) # clone level
>                   R.group2  <- var.a2/(var.a2+var.e)
>                   R.groupr  <- var.a1/(var.a1+var.e+var.a2)
>         if(returnR)
> return(list(R.group1=R.group1,R.group2=R.group2,R.groupr=R.groupr))
>         else return(list(beta0=beta0, var.e=var.e, var.a1=var.a1,
> var.a2=var.a2))
>     }
>
>
>    I would appreciate any help about this. Let me know if you need more
> code, the function is obviously longer.
>    Thank you very much in advance.
>    Iker
> __________________________________________________________________
>
>    Dr. Iker Vaquero-Alba
>     Daphne du Maurier
>     Centre for Ecology and Conservation
>     College of Life and Environmental Sciences
>     University of Exeter, Cornwall Campus
>     TR10 9FE
>     Penryn
>     U.K.
>
>
> http://biosciences.exeter.ac.uk/cec/staff/postgradresearch/ikervaquero-alba/
>
>     https://eric.exeter.ac.uk/repository/handle/10036/3381
>
>
>         [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help op r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> <http://www.r-project.org/posting-guide.html>
> and provide commented, minimal, self-contained, reproducible code.
>
>
>
>

	[[alternative HTML version deleted]]



More information about the R-help mailing list