采用配对t检验比较每个剂量组组内试验组与对照组的差异。
1.使用ttest过程
proc sql;
create table ds_ana1 as
select a.*,b.AVAL as AVAL1
from adef(where=(GROUPN=2)) a
left join adef(where=(GROUPN=1)) b
on a.USUBJID=b.USUBJID and a.TRTPN=b.TRTPN and a.AVISITN=b.AVISITN
order by TRTPN,AVISITN
;
quit;
*配对t检验;
ods graphics off;
proc ttest data=ds_ana1;
by TRTPN;
PAIRED AVAL*AVAL1;
ods output TTests=TTests;
run;
data ds_ana1;
set TTests;
format _all_;
__StatValue=tValue;
__PValue=Probt;
run;
PAIRED语句中的成对变量分别为试验组与对照组数据,CLASS和VAR语句不能与PAIRED语句一起使用。
2.使用univariate过程
data Pair1;
merge Ana1(rename=(AVAL=AVAL1 TRTP=TRTP1) where=(TRTP1='试验组'))
Ana1(rename=(AVAL=AVAL2 TRTP=TRTP2) where=(TRTP1='对照组'));
by PARAMN VISIT TRTPN TRTP USUBJID;
DIF=AVAL1-AVAL2;
proc sort;
by PARAMN;
run;
ods select none;
ods output TestsForLocation = _rpt1(where=(Test='Student t'));
proc univariate data=Pair1 normal;
by PARAMN;
var DIF;
run;
ods select all;
DIF为试验组与对照组结果做差得到的值。