OPTIONS NOnumber NOdate NOcenter FormDlim=' ' PageSize=MAX LineSize=MAX;
TITLE; ODS TRACE OFF; ODS LISTING CLOSE;
%MACRO FitTest(FitFewer=,FitMore=);
DATA &FitFewer.; LENGTH Name $30.; SET &FitFewer.; Name="&FitFewer."; RUN;
DATA &FitMore.; LENGTH Name $30.; SET &FitMore.; Name="&FitMore."; RUN;
DATA FitCompare; LENGTH Name $30.; SET &FitFewer. &FitMore.; RUN;
DATA FitCompare; SET FitCompare; DevDiff=Lag1(Neg2LogLike)-Neg2LogLike;
DFdiff=Parms-LAG1(Parms); Pvalue=1-PROBCHI(DevDiff,DFdiff);
DROP AICC HQIC CAIC; RUN;
TITLE9 "Likelihood Ratio Test for &FitFewer. vs. &FitMore.";
PROC PRINT NOOBS DATA=FitCompare; RUN; TITLE9;
%MEND FitTest;
%LET filesave= C:\Dropbox\PilesOfVariance\Chapter3b\SAS;
LIBNAME filesave "&filesave.";
DATA work.Chapter3b; SET filesave.SAS_Chapter3b; RUN;
ODS HTML FILE="&filesave.\SAS_Chapter3b_Output.html"
(URL="SAS_Chapter3b_Output.html") STYLE=HTMLBlue;
TITLE1 "Chapter 3b Example: Means by session for RT outcome";
PROC MEANS MEAN STDERR MIN MAX DATA=work.Chapter3b;
CLASS session;
WAYS 0 1;
VAR rt;
RUN; TITLE1;
TITLE1 'Eq 3b.10: Between-Person Independent ANOVA';
PROC MIXED DATA=work.Chapter3b COVTEST NOCLPRINT NAMELEN=100 IC METHOD=REML;
CLASS PersonID session;
MODEL rt = session / SOLUTION CL CHISQ DDFM=Satterthwaite;
REPEATED session / R RCORR TYPE=VC SUBJECT=PersonID;
ODS OUTPUT InfoCrit=FitBPANOVA;
LSMEANS session / DIFF=ALL CL;
RUN; TITLE1;
TITLE1 'Eq 3b.10: Univariate Repeated Measures ANOVA';
PROC MIXED DATA=work.Chapter3b COVTEST NOCLPRINT NAMELEN=100 IC METHOD=REML;
CLASS PersonID session;
MODEL rt = session / SOLUTION CL CHISQ DDFM=Satterthwaite;
REPEATED session / R RCORR TYPE=CS SUBJECT=PersonID;
ODS OUTPUT InfoCrit=FitUnivANOVA;
LSMEANS session / DIFF=ALL CL;
RUN; TITLE1;
%FitTest(FitFewer=FitBPANOVA, FitMore=FitUnivANOVA);
TITLE1 'Eq 3b.10: Multivariate Repeated Measures ANOVA';
PROC MIXED DATA=work.Chapter3b COVTEST NOCLPRINT NAMELEN=100 IC METHOD=REML;
CLASS PersonID session;
MODEL rt = session / SOLUTION CL CHISQ DDFM=Satterthwaite;
REPEATED session / R RCORR TYPE=UN SUBJECT=PersonID;
ODS OUTPUT InfoCrit=FitMultivANOVA;
LSMEANS session / DIFF=ALL CL;
RUN; TITLE1;
%FitTest(FitFewer=FitUnivANOVA, FitMore=FitMultivANOVA);
ODS HTML CLOSE;