data one; input person sample y; cards; 1 1 191 1 2 193 2 1 185 2 2 189 3 1 175 3 2 172 4 1 200 4 2 198 5 1 168 5 2 171 6 1 177 6 2 176 7 1 182 7 2 178 8 1 173 8 2 175 ; run; proc mixed method=type3; *proc mixed; class person sample; model y=; random person; estimate "mu" intercept 1/cl; run; ods trace on; proc mixed cl; class person sample; model y=; repeated /subject=person r rcorr type=cs ; estimate "mu" intercept 1/cl; ods output rcorr=rcorr covparms=covparms; run; proc print data=covparms; run; proc transpose data=covparms out=varcomps ; id covparm; /* ID statement works differently in PROC TRANSPOSE than in other procs */ var estimate; run; proc print data=varcomps; run; data varcomps; /* here I compute a conf. interval for the intraclass corrn. */ set varcomps; rho=cs/(cs+residual); fobs=53.57; fupper=finv(.975,7,8); flower=finv(.025,7,8); rholower=(fobs-fupper)/(fobs+(2-1)*fupper); rhoupper=(fobs-flower)/(fobs+(2-1)*flower); run; proc print data=varcomps;run;