Example 1 for PROC LIFEREG
/****************************************************************/
/* S A S S A M P L E L I B R A R Y */
/* */
/* NAME: LIFEREX1 */
/* TITLE: Example 1 for PROC LIFEREG */
/* PRODUCT: STAT */
/* SYSTEM: ALL */
/* KEYS: survival data analysis */
/* PROCS: LIFEREG */
/* DATA: */
/* */
/* SUPPORT: lichen */
/* REF: PROC LIFEREG, EXAMPLE 1. */
/* MISC: */
/****************************************************************/
title 'Motorette Failures With Operating Temperature as a Covariate';
data motors;
input time censor temp @@;
if _N_=1 then
do;
temp=130;
time=.;
control=1;
z=1000/(273.2+temp);
output;
temp=150;
time=.;
control=1;
z=1000/(273.2+temp);
output;
end;
if temp>150;
control=0;
z=1000/(273.2+temp);
output;
datalines;
8064 0 150 8064 0 150 8064 0 150 8064 0 150 8064 0 150
8064 0 150 8064 0 150 8064 0 150 8064 0 150 8064 0 150
1764 1 170 2772 1 170 3444 1 170 3542 1 170 3780 1 170
4860 1 170 5196 1 170 5448 0 170 5448 0 170 5448 0 170
408 1 190 408 1 190 1344 1 190 1344 1 190 1440 1 190
1680 0 190 1680 0 190 1680 0 190 1680 0 190 1680 0 190
408 1 220 408 1 220 504 1 220 504 1 220 504 1 220
528 0 220 528 0 220 528 0 220 528 0 220 528 0 220
;
proc print data=motors;
run;
proc lifereg data=motors outest=modela covout;
a: model time*censor(0)=z;
output out=outa quantiles=.1 .5 .9 std=std p=predtime
control=control;
run;
proc lifereg data=motors outest=modelb covout;
b: model time*censor(0)=z / dist=lnormal;
output out=outb quantiles=.1 .5 .9 std=std p=predtime
control=control;
run;
data models;
set modela modelb;
run;
proc print data=models;
id _model_;
title 'Fitted Models';
run;
data out;
set outa outb;
run;
data out1;
set out;
ltime=log(predtime);
stde=std/predtime;
upper=exp(ltime+1.64*stde);
lower=exp(ltime-1.64*stde);
run;
title 'Quantile Estimates and Confidence Limits';
proc print data=out1;
id temp;
run;
title;