[R] nlme questions (e.g., specifying group membership, changing options)

Spencer Graves spencer.graves at pdf.com
Thu Jun 24 16:53:15 CEST 2004


      Are your categorical variables factors or ordered factors?  If 
yes, lm and many other functions including, I believe, nlme, will 
automatically create the required dummy variables using contrasts 
specified by options()$contrasts.  Consider the following: 

 > options("contrasts")
$contrasts
        unordered           ordered
"contr.treatment"      "contr.poly"

 > lm(y~x, DF)

Call:
lm(formula = y ~ x, data = DF)

Coefficients:
(Intercept)           xb           xc 
        1.5          2.0          4.0 

 > contr.treatment(3)
  2 3
1 0 0
2 1 0
3 0 1
 > options(contrasts=c(unordered="contr.helmert", ordered="contr.poly"))
 > lm(y~x, DF)

Call:
lm(formula = y ~ x, data = DF)

Coefficients:
(Intercept)           x1           x2 
        3.5          1.0          1.0 

 > contr.helmert(3)
  [,1] [,2]
1   -1   -1
2    1   -1
3    0    2
 >

      Have you studied Pinheiro and Bates (2000) Mixed-Effects Models in 
S and S-Plus (Springer)?  I found answers to questions like yours in 
that book. 

      hope this helps.  spencer graves

KKThird at Yahoo.Com wrote:

>I'm trying to better understand the nlme package and have a few questions.
>
> 
>
>1.) 
>
>Other than using various coding strategies (e.g., dummy coding, effect coding), is there a way to identify group membership (i.e., treatment) directly? For example, the following code will fit a two group logistic growth curve (where 'Score' is repeatedly measured over 'Time' for each of the individuals (ID)):
>
> 
>
>nlme(Score ~ (ALPHA + Group)/(1+exp(-(GAMMA + Group)*(Time - (BETA+Group)))),
>
>            data=LE,
>
>            fixed=ALPHA + BETA + GAMMA ~ 1,
>
>            random=ALPHA + BETA + GAMMA ~ 1,
>
>            groups=~ID,
>
>            start = c(ALPHA = 1, BETA = 3.25, GAMMA = 2.5))
>
>            
>
>Rather than specifying the effect of Group in such a manner, is there a simpler way to identify group membership in order to test the effect of group differences on the parameters of the model? I thought (removing the dummy codes and) specifying group membership by: 'groups=~ID/Groups' might work, but an error is returned. I also thought specifying group membership by :'fixed=ALPHA + BETA + GAMMA ~ 1' might work, but an error is also returned.  
>
> 
>
>2.) 
>
>When will, that is under what circumstances, will there be something different than '~1' on the right hand side of the 'fixed' and 'random' specification lines?
>
> 
>
>3.)
>
>Given that I figure out a way to specify group membership/treatment, how are starting values for both groups specified? Can the covariance structure also be given starting values?
>
> 
>
>Sorry for what might turn out to be simply questions. But, as of yet I've not been able to understand exactly what is going on. Thanks for any help you might be able to provide.
>
>Have a good one,
>
>Ken
>
>
>		
>---------------------------------
>
>
>	[[alternative HTML version deleted]]
>
>______________________________________________
>R-help at stat.math.ethz.ch mailing list
>https://www.stat.math.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>  
>




More information about the R-help mailing list