BookmarkSubscribeRSS Feed
Muller
Calcite | Level 5

I agree with Steve. Also, you need to separate modeling the mean part (what terms of time to include... linear, quadratic, etc) and modeling the covariance part. The book by Fitzmaurice et al has a good discussion of steps to follow when modeling the mean and covariance components of GLMM. I usually like to identify the 'best' mean model under a more unstructured covariance model and then work towards a more parsimonious covariance model using my 'best' mean model. Hope this helps.

Mulugeta

Sandhu
Calcite | Level 5

Dear Mulugeta,

   Are you referring to "Longitudnal data analysis 2009" book by Fitzmaurice et al? i tried very hard to get this book but could not. I really feel this is very good book as per little bit information i could get from this book through internet. I will follow your's and Steve's advise for analysis.

Thanks a lot for all the help.

Sandhu

jrbrauer
Fluorite | Level 6

Hi all,

I'm sorry for such a late addition to the discussion here - just ignore if you have solved this problem already. In all the examples provided, you appear to start with the assumption that a baseline quadratic growth model offers the best fit for the data. You might consider revisiting this assumption. The only post that provides any fixed effects coefficients (#6) suggests that a linear model might fit as well (or better). At the very least, the fixed portion of the model appears seriously overparameterized; further, inclusion of squared terms for time (implying a common curvature in VAS scores across individuals) and interactions with the squared term (implying systematic differences in temporal curvature across age and sex groups) in this portion of the model might be leading you to overparameterize the stochastic portion of the model as well (as Steve noted earlier). Have you tried hierarchically building the model from a simpler platform, perhaps like the following:

*model baseline linear growth model;

proc glimmix data=data2 ORDER=Data ;

class id sex age ;

model vas = int time;

random int time / subject=id type=un;

run;

*model baseline quadratic growth model and compare overall fit and statistical significance of squared term;

proc glimmix data=data2 ORDER=Data ;

class id sex age ;

model vas = int time time*time

random int time / subject=id type=un;

run;

*model baseline quadratic growth model with additional error term, compare overall fit and statistical significance of error term;

proc glimmix data=data2 ORDER=Data ;

class id sex age ;

model vas = int time time*time

random int time time*time / subject=id type=un;

run;

*from what I've seen so far, at this point, I'm guessing you will need to remove time*time from the stochastic portion of the model, and perhaps remove its fixed coefficient as well;

*for instance, you may be moving to something like the following...;

*model average effect of sex, age, and their interaction on the intercept (mean at time 0) of VAS trajectories

proc glimmix data=data2 ORDER=Data ;

class id sex age ;

model vas = int time time*time

            sex age sex*age

random int time / subject=id type=un;

run;

*then, continue to build on the model to determine whether additional interactions are warranted, for instance... ;

*model average effects of sex, age, and their interaction on the intercept (mean at time 0) and linear slope (instantaneous rate of change) of VAS trajectories;

proc glimmix data=data2 ORDER=Data ;

class id sex age ;

model vas = int time time*time

            sex age sex*age

            sex*time age*time sex*age*time

random int time / subject=id type=un;

random int time / subject=id type=un;

run;

*again, based on predictions from post #6, I'm guessing additional interactions (and perhaps even these) are unwarranted (i.e., age*time*time, etc.);

After building the fixed portion of the model, you might then attempt to improve model fit by further specifying the stochastic portion (I think this approach is akin to what Muller was recently suggesting). For instance, you might then consider specifying an autoregressive covariance structure to account for stronger correlations between proximate observations in a repeated measures design. I agree with Muller that an R-side correction is probably unnecessary, but at this point, you could compare...

I hope this helps and that it is not too late.

Best,

Jon

Message was edited by: Jon Brauer

Sandhu
Calcite | Level 5

Hello Jon,

            Thanks for such a nice explanation. I will consider these options also. Its great to have such a helpful discussion with you, Steve and Muller.

Thanks

Sandhu

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 18 replies
  • 7751 views
  • 3 likes
  • 4 in conversation