Thanks Joshua..
It really helped in polishing my coding essentials
in R.
Thanks & Regards
Vijayan Padmanabhan


"What is expressed without proof can be denied
without proof" - Euclide.



                                                  
             Joshua                               
             Wiley                                
             <jwiley                           To 
             .psych@         Vijayan Padmanabhan  
             gmail.c         <v.padmanab...@itc.i 
             om>             n>                   
                                               cc 
             05/18/2         r-help@r-project.org 
             010                          Subject 
             07:18           Re: [R] Query on     
             PM              linear mixed model   
                                                  
                                                  
                                                  
                                                  
                                                  
                                                  




On Tue, May 18, 2010 at 4:52 AM, Vijayan
Padmanabhan
<v.padmanab...@itc.in> wrote:
<snip>

This does not answer your statistical question,
but I did include some
ideas to simplify your script.

> ##For ALL Product Comparison across All Time
> Points.
>
options(contrasts=c('contr.treatment','contr.poly'))

> data<-subset(MyData,Attribute=="ChromaL")
> tapply(data$value, list(Product=data$Product),
> mean,
>  na.rm=TRUE)
> model <- lme(value ~
>
Product+Time+Arm+Product*Arm+Product*Time+Product*Arm*Time,

>  random = ~1 | Subj,data =data)
> summary(model)

using '*' automatically crosses all the variables.
A more parsimonius form is:
lme(value ~ Product*Arm*Time, random = ~1 |
Subj,data =data)

there is only a slight reordering of effects, but
all estimates are the same.

> x<-anova(model)
> x
> library(multcomp)
>
su<-summary(glht(model,linfct=mcp(Product="Tukey")))

> ##length(su)
> ##su[1:(length(su)-4)]
> x11()
>
plot(summary(glht(model,linfct=mcp(Product="Tukey"))),cex.axis=0.6)

>
>
> ##For Each Product Comparison across All Time
> Points.
> data<-MyData
> data<-subset(data,Product=="a")
> tapply(data$value, list(Time=data$Time), mean,
>  na.rm=TRUE)
> model <- lme(value ~ Time+Arm+Time*Arm, random =
> ~1 | Subj,data =data)

again, simplified:

lme(value ~ Time*Arm, random = ~1 | Subj,data
=data)

(no reordering even this time)

> summary(model)
> x<-anova(model)
> x
> library(multcomp)
> summary(glht(model,linfct=mcp(Time="Tukey")))
> x11()
>
plot(summary(glht(model,linfct=mcp(Time="Tukey"))),cex.axis=0.6)

>
> data<-MyData
> data<-subset(data,Product=="b")
> tapply(data$value, list(Time=data$Time), mean,
>  na.rm=TRUE)
> model <- lme(value ~ Time+Arm+Time*Arm, random =
> ~1 | Subj,data =data)

lme(value ~ Time*Arm, random = ~1 | Subj,data
=data)

> summary(model)
> x<-anova(model)
> x
> library(multcomp)
> summary(glht(model,linfct=mcp(Time="Tukey")))
> x11()
>
plot(summary(glht(model,linfct=mcp(Time="Tukey"))),cex.axis=0.6)

>
> data<-MyData
> data<-subset(data,Product=="c")
> tapply(data$value, list(Time=data$Time), mean,
>  na.rm=TRUE)
> model <- lme(value ~ Time+Arm+Time*Arm, random =
> ~1 | Subj,data =data)

lme(value ~ Time*Arm, random = ~1 | Subj,data
=data)

> summary(model)
> x<-anova(model)
> x
> library(multcomp)
> summary(glht(model,linfct=mcp(Time="Tukey")))
> x11()
>
plot(summary(glht(model,linfct=mcp(Time="Tukey"))),cex.axis=0.6)

>
>
> ##For All Product Comparison at Each Time
Points.
> data<-MyData
> data<-subset(data, Time=="T0")
> tapply(data$value, list(Product=data$Product),
> mean,
>  na.rm=TRUE)
>
> model <- lme(value ~ Product+Arm+Product:Arm,
> random = ~1 | Subj,data =data)

here you used ':' so it is not redundant, but it
can still be simplified to:

lme(value ~ Product*Arm, random = ~1 | Subj,data
=data)

> summary(model)
> x<-anova(model)
> x
> library(multcomp)
> summary(glht(model,linfct=mcp(Product="Tukey")))
> x11()
>
plot(summary(glht(model,linfct=mcp(Product="Tukey"))),cex.axis=0.6)

>
>
> data<-MyData
> data<-subset(data, Time=="T1")
> tapply(data$value, list(Product=data$Product),
> mean,
>  na.rm=TRUE)
>
> model <- lme(value ~ Product+Arm+Product:Arm,
> random = ~1 | Subj,data =data)

lme(value ~ Product*Arm, random = ~1 | Subj,data
=data)

> summary(model)
> x<-anova(model)
> x
> library(multcomp)
> summary(glht(model,linfct=mcp(Product="Tukey")))
> x11()
>
plot(summary(glht(model,linfct=mcp(Product="Tukey"))),cex.axis=0.6)

>
>
> data<-MyData
> data<-subset(data, Time=="T2")
> tapply(data$value, list(Product=data$Product),
> mean,
>  na.rm=TRUE)
>
> model <- lme(value ~ Product+Arm+Product:Arm,
> random = ~1 | Subj,data =data)

lme(value ~ Product*Arm, random = ~1 | Subj,data
=data)

> summary(model)
> x<-anova(model)
> x
> library(multcomp)
> summary(glht(model,linfct=mcp(Product="Tukey")))
> x11()
>
plot(summary(glht(model,linfct=mcp(Product="Tukey"))),cex.axis=0.6)


Unless only parts of this script are being run in
a given session, I
cannot think of a good reason to keep calling
"library(multcomp)".  I
also notice that your script repeats the same
steps frequently, so you
might benefit from making a little function that
does all the steps
you want.  That way if you ever want to add or
change something, you
just have to update the function.

Good luck,

Josh

<snip>



--
Joshua Wiley
Senior in Psychology
University of California, Riverside
http://www.joshuawiley.com/



Can you avoid printing this?
Think of the environment before printing the email.
-------------------------------------------------------------------------------
Please visit us at www.itcportal.com
******************************************************************************
This Communication is for the exclusive use of the intended recipient (s) and 
shall
not attach any liability on the originator or ITC Ltd./its Subsidiaries/its 
Group 
Companies. If you are the addressee, the contents of this email are intended 
for your 
use only and it shall not be forwarded to any third party, without first 
obtaining 
written authorisation from the originator or ITC Ltd./its Subsidiaries/its 
Group 
Companies. It may contain information which is confidential and legally 
privileged
and the same shall not be used or dealt with by any third party in any manner 
whatsoever without the specific consent of ITC Ltd./its Subsidiaries/its Group 
Companies.

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to