First off, the response values should not be modeled with a multinomial distribution. That implies levels, and nothing will ever converge with only one observation per level. So, remove cover_average from the CLASS statement. Then you may want to consider what distribution to use to model this variable. I would suggest a beta distribution, but it only has support on the open interval (0, 1), and I see you have some zeroes in your responses. Consider adding a very small bit to the zeroes (say 1e-6) and try fitting this code:
PROC GENMOD DATA=WORK.IMPORTMODIFIED ;
CLASS BLOCK_TREATMENT TREATMENT COVER_AVERAGE MONTH;
MODEL COVER_AVERAGE = BLOCK_TREATMENT TREATMENT MONTH/ dist=beta;
REPEATED SUBJECT = BLOCK_TREATMENT / type=IND;
RUN;
Perhaps a better approach would be to use PROC GLIMMIX, so that a covariance structure could be applied to the repeated measure MONTH.
PROC glimmix DATA=WORK.IMPORTMODIFIED ;
CLASS BLOCK_TREATMENT TREATMENT COVER_AVERAGE MONTH;
MODEL COVER_AVERAGE = BLOCK_TREATMENT TREATMENT MONTH treatment*month/ dist=beta;
random block_treatment;
random month/ SUBJECT = BLOCK_TREATMENT type=AR(1);
RUN;
My changes are all in lower case.
SteveDenham
... View more