data walk; input trtment time; label trtment='treatment group' time='ages (in months)'; lines; 1 9.00 1 9.50 1 9.75 1 10.00 1 13.00 1 9.50 2 11.00 2 10.00 2 10.00 2 11.75 2 10.50 2 15.00 3 11.50 3 12.00 3 9.00 3 11.50 3 13.25 3 13.00 4 13.25 4 11.50 4 12.00 4 13.50 4 11.50 run; proc glm; class trtment; model time=trtment; output out=walk2 r=resid; proc print data=walk2; proc univariate data=walk2 normal plot; var resid; proc rank data=walk2 out=walk3 normal=blom; var resid; ranks zexpect; proc print data=walk3; proc corr data=walk3 noprob; var resid zexpect; proc sort data=walk3; by zexpect; symbol1 v=circle i=r1; proc gplot data=walk3; plot resid*zexpect; *approximately the same graph; proc univariate data=walk2 noprint; qqplot resid / normal (L = 1 mu = est sigma = est); run; title 'One-Way ANOVA and checking the residuals for normality'; title2 'Data from Table 10.1, P. 420 of Fisher and van Belle'; run; quit;