


Appendix B
SAS programs
B.1 SAS programs of Chapter 1
B.1.1 Example 1.3.2
proc glm data=ex124;
class herd dose drug;
model PCVdif=drug herd(drug) dose dose*drug;
random herd(drug);
run;
B.2 SAS programs of Chapter 2
B.2.1 Example 2.2.1.7
proc glm data=ex121;
class dose;
model PCVdif=dose;
estimate 1 vs mh dose -0.5 1 -0.5;
contrast 1 vs mh dose -0.5 1 -0.5;
run;
B.2.2 Example 2.4.2.2
proc mixed data=ex125 method=ml;
class drug dose region;
model pcv=drug dose drug*dose;
random region drug*region; run;
proc mixed data=ex125 method=reml;
class drug dose region;
model pcv=drug dose drug*dose;
random region drug*region;
run;
B.2.3 Example 2.4.3.1
proc mixed data=ex127;
class sire;
model ww=;
random sire / solution;
run;
B.2.4 Example 2.5.1.1
proc mixed data=ex125;
class drug dose region;
model pcv=drug dose drug*dose / solution covb;
random region drug*region;
run;
B.2.5 Example 2.5.2.1
proc mixed data=ex125;
class drug dose region;
model pcv=drug dose drug*dose;
random region drug*region;
lsmeans drug*dose;
run;
B.2.6 Example 2.5.3.1
proc glm data=ex125;
class drug dose region;
model pcv=region drug region*drug dose drug*dose;
random region drug*region;
run;
B.2.7 Example 2.5.3.1
proc mixed data=ex125;
class drug dose region;
model pcv= drug dose drug*dose /ddfm=satterth;
random region drug*region;
estimate 'drug dif' drug -1 1 drug*dose -0.5 -0.5 0.5 0.5;
estimate 'Samorin mean' intercept 1 drug 0 1 dose 0.5 0.5
drug*dose 0 0 0.5 0.5;
estimate 'Samorin HvsL' dose 1 -1 drug*dose 0 0 1 -l;
estimate 'Samorin high' intercept 1 drug 0 1 dose 1 0
drug*dose 0 0 1 0;
run;
B.2.8 Example 2.5.4.1
proc mixed data=ex125;
class drug dose region;
model pcv= drug dose drug*dose /ddfm=satterth;
random region drug*region;
estimate 'Samorin mean' intercept 1 drug 0 1 dose 0.5 0.5
run;
proc gin data=ex125;
class drug dose region;
model pcv=region drug drug*region dose drug*dose;
estimate 'Samorin mean' intercept 1 drug 0 1 dose 0.5 0.5
run;
B.2.9 Example 2.6.1
proc mixed data=ex125;
class drug dose region;
model pcv= drug dose drug*dose /ddfm=satterth;
random region drug*region;
contrast 'drug dif' drug -1 1 drug*dose -0.5 -0.5 0.5 0.5;
contrast 'all' drug 1 -1 dose 0 0 drug*dose 0.5 0.5 -0.5 -0.5,
drug 0 0 dose 1 -1 drug*dose 0.5 -0.5 0.5 -0.5,
drug 0 0 dose 0 0 drug*dose 0.5 -0.5 -0.5 0.5;
run;
B.3 SAS programs of Chapter 3
B.3.1 Example 3.1
B.3.1.1 Model 1
proc mixed data=ex31;
class drug dose herd;
model PCV2=drug dose(drug)/solution ddfm=satterth;
random herd(drug);
estimate 'Mean Samorin' intercept 1 drug 0 1 dose(drug) 0 0 1;
estimate 'Berenil 2 doses' dose(drug) 1 -1 0;
estimate Ber vs Sam at dose 1' drug 1 -1 dose(drug) 1 0 -1;
contrast 'Mean Samorin' intercept 1 drug 0 1 dose(drug) 0 0 1;
contrast 'Berenil dif 2 doses' dose(drug) 1 -1 0;
contrast Ber vs Sam at dose 1 drug 1 -1 dose(drug) 1 0 -l;
contrast 'some difference' drug 1 -1 dose(drug) 0.5 0.5 -1,
drug 0 0 dose(drug) 1 -1 0;
lsmeans dose(drug);
run;
B.3.1.2 Model 2
proc mixed data=ex31;
class drug dose herd;
model PCV2=PCVl drug dose(drug) /solution ddfm=satterth;
random herd(drug);
run;
B.3.1.3 Model 3
proc mixed data=ex31;
class drug dose herd;
model PCV2=drug dose(drug) PCVl*dose(drug) /solution ddfm=satterth;
random herd(drug);
lsmeans dose(drug)/at PCV1=18;
run;
B.3.2 Example 3.2
proc mixed data=ex32;
class sex sire-id breed;
model ww= sex agew breed/solution ddfm=satterth;
random sire_d(breed)/solution;
Ismeans breed/adjust=tukey;
run;
B.3.3 Example 3.3
B.3.3.1 Model 1
proc mixed data=ex33;
class breed anim_id;
model pcv=breed breed*time/solution;
random anim_d(breed) / solution;
run;
proc mixed data=ex33;
class breed anim_d;
model pcv=breed breed*time/solution;
repeated / type=cs sub=anim_d(breed) R;
run;
proc mixed data=ex33;
class breed anim_id;
model pcv=time breed breed*time/solution;
random anim_id(breed) / solution;
run;
B.3.3.2 Model 2
proc mixed data=ex33;
class breed anim_id;
model pcv=breed breed*time/solution;
repeated / type=AR(1) sub=anim_id(breed) R;
run;
B.3.3.3 Model 3
proc mixed data=ex33;
class breed anim_d;
model pcv=breed breed*time/solution;
random intercept time/type=un sub=anim_d(breed) solution;
run;


