If days are consecutive, but hours are not, you might be able to use this (UNTESTED): proc glimmix data=Grazedungrazed; class season day hour Treatment Patch; elapsedt=hour; model Grazed/Grasses = season|Treatment|ELAPSED/ddfm=satterth dist=binomial; random intercept/subject=patch; random day / Subject = Treatment*patch Type=ar(1); random hour / Subject = Treatment*patch*day Type=sp(pow)(elapsedt); /* I do not have this as a traditional R side repeated/_residual_, following Stroup (2013) and fitting a conditional model, so that the estimates are the proportions conditional on the random effects, rather than averaged over the time points (marginals) */ ; LSmeans season|Treatment|day|hour / diff adjust = tukey adjdfe=row ilink; ods output LSmeans = Grazmeans Diffs = GrazPdiffs; title ' Grazedprop'; run; You may run up against memory and computing time problems with this, unfortunately. Steve Denham
... View more