[R] Conveting SAS Proc mixed to R code
Ben Bolker
bbolker at gmail.com
Fri Apr 15 15:45:20 CEST 2011
Kevin Wright <kw.stat <at> gmail.com> writes:
>
> > I am trying to teach myself R and replicate some previous SAS analysis.
> > Could someone please help me translate the following SAS code into R.
> >
> > Proc mixed method=ml
> > Class Group Treatment Stream Time Year;
> > Model Logrpk=Treatment Time Treatment*Time;
> > Random Group Stream (Group Treatment) Year(Time);
> >
>
> Assuming you have a data frame "dat" with these factors: Group Treatment
> Stream Time Year
> And continuous response: logrpk
>
> This code is a starting point: (I'm not sure exactly what the SAS syntax
> means).
>
> require(lme4)
> m1 = lmer(logrpk ~ treatment*time + (1|Group) + (1|Stream:Group:Treatment) +
> (1|Year:Time), data=dat)
>
Can I please suggest that (Treatment|Stream:Group) or something
like it is more appropriate than (1|Stream:Group:Treatment)? In
general, what goes on the LEFT of the bar is an intercept or fixed
effect (i.e. something that varies between groups); what goes on
the RIGHT of the bar is a grouping variable. Thus if a fixed effect
terms ends up on the right of the bar, something funny is going on.
Ben Bolker
More information about the R-help
mailing list