options nodate nocenter; data one; input salinity container weight; cards; 0 1 11.29 0 1 11.08 0 1 11.10 0 2 7.37 0 2 6.55 0 2 8.50 6 3 5.64 6 3 5.98 6 3 5.69 6 4 4.20 6 4 3.34 6 4 4.21 12 5 4.83 12 5 4.77 12 5 5.66 12 6 3.28 12 6 2.61 12 6 2.69 ; proc glm; class salinity container; model weight=salinity container(salinity) / clparm; random container(salinity); test h=salinity e=container(salinity); estimate 'Control Mean' intercept 1 salinity 1 0 0; estimate 'Control - 6 bars' salinity 1 -1 0; lsmeans salinity / adjust=tukey pdiff cl; run; proc mixed; class salinity container; model weight=salinity; random container(salinity); estimate 'Control Mean' intercept 1 salinity 1 0 0 / cl; estimate 'Control - 6 bars' salinity 1 -1 0 / cl; lsmeans salinity / adjust=tukey pdiff cl; run; proc means data=one noprint; var weight; by salinity container; output out=two mean=y; run; proc print; run; proc glm; class salinity; model y=salinity; estimate 'Control Mean' intercept 1 salinity 1 0 0 / cl; estimate 'Control - 6 bars' salinity 1 -1 0 / cl; lsmeans salinity / adjust=tukey pdiff cl; run;