Dear all:
I hope you all are doing well and keeping safe.
I would like to implement this mixed model in Bayesian framework. The codes are below:
***********************************************************************************************
/*Multivariate RM Models with Kronecker product covariance*/
proc mixed data=sg2 covtest cl;
class tree aspect height time ;
model y = height|time / noint ;
random tree ;
repeated height time / type = un@ar(1) subject=tree(aspect) r rcorr;
run;
********************************************************************************************
Height factor has 6 levels; time factor has 10 levels and aspect has 2 levels.
Thank you.
The only thing I can think of is to look at PROC BGLIMM, and model the unstructured part of the Kronecker expression with a RANDOM statement and the AR(1) part with a REPEATED statement.
proc bglimm data=sg2;
class tree aspect height time ;
model y = height|time / noint ;
random intercept height/type=un subject=tree ;
repeated time / type =ar(1) subject=tree(aspect*height) r rcorr ;
run;
Absolutely no guarantees on this, but if you do get it to give reasonable results, I would really, REALLY like to know of any tweaks you might have used.
SteveDenham
The only thing I can think of is to look at PROC BGLIMM, and model the unstructured part of the Kronecker expression with a RANDOM statement and the AR(1) part with a REPEATED statement.
proc bglimm data=sg2;
class tree aspect height time ;
model y = height|time / noint ;
random intercept height/type=un subject=tree ;
repeated time / type =ar(1) subject=tree(aspect*height) r rcorr ;
run;
Absolutely no guarantees on this, but if you do get it to give reasonable results, I would really, REALLY like to know of any tweaks you might have used.
SteveDenham
The only thing in the code I see that might be causing that are these two statements:
random intercept / subject = tree nuts;
random intercept height / type=un subject=tree(aspect) gcorr nuts;
What happens if you shift those around a bit to:
random intercept / subject = tree nuts;
random height / type=un subject=tree(aspect) gcorr nuts;
This ought to treat height more like a G side repeated measure, and remove the two level intercepts for tree and aspect within tree, as I suspect you may be short of enough data to fit both of those and height.
SteveDenham
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!
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.