proc format; value bac -1="Control" 1="Myco"; value temp -1="Cold" 1="Warm"; value inoc -1="Egg" 1="Chick"; run; data TwoLevel; input Bacteria Temp Inoculation Bill_Length; format Bacteria bac. Temp temp. Inoculation inoc.; *We need to use -1 1 coding for this to generate the correctly scaled estimates; datalines; -1 -1 -1 39.77 -1 -1 1 40.23 1 -1 -1 39.19 1 -1 1 38.95 -1 1 -1 40.37 -1 1 1 41.71 1 1 -1 40.21 1 1 1 40.78 ; *Save parameter estimates using ODS output; proc glm data=TwoLevel; *No CLASS statement is used; model Bill_Length = Bacteria|Temp|Inoculation/solution; *The estimates will be exactly half the size of the estimates we derived in class; ods output ParameterEstimates=normplot; run; ods listing; *The intercept has to be removed; data normplot; set normplot; where parameter ne 'Intercept'; run; proc univariate data=normplot normal plot; var estimate; run;