SAS Institute. The Power to Know

Learning Center

Keep in Touch

SAS Press Series
1-800-727-3228
saspress@sas.com

SAS Press» Companion Site


Updates for SAS Programming in the Pharmaceutical Industry


***** The following changes will be incorporated in the third printing of this book in August 2008.*****

Page 86, in the data table at the bottom of the page, Subject=103 and Dosing Date=07OCT2003 is incorrect.

The corrected text is Subject=102 and the Dosing Date stays as it is as 07OCT2003.


Page 120, Program 4.14, code currently reads:

if visit = 0 then

baseline = value;

else if visit > 0 then
....

It should read:

if week = 0 then

baseline = value;
else if week > 0 then
....

"visit" gets replaced by "week".


Page 140, Program 5.3,the top line should read:

format n mean std min max $14.;

instead of....

format n mean sd min max $14.;

The t in std was lost somewhere in the first statement.


*****The following changes were incorporated in the second printing of this book in June 2007.*****

Page 25, Program 2.5, should include an End statement:

data endstudy;

set endstudy;
**** HARDCODE APPROVED BY DR. NAME AT SPONSOR ON 02/02/2005;
if subjid = "101-1002" and "&sysdate" <= "01MAY2005"d then
do;
discterm = "Death";
put "Subject " subjid "hardcoded to termination reason"
discterm;
end;
run;


Page 97, Program 4.5, code should be revised as follows:

**** INPUT SAMPLE NORMALIZED SYSTOLIC BLOOD PRESSURE VALUES.
**** SUBJECT = PATIENT NUMBER, VISIT = VISIT NUMBER,
**** SBP = SYSTOLIC BLOOOD PRESSURE.;
data sbp;
input subject $ visit sbp;
datalines;
101 1 160
101 2 150
101 3 140
101 4 130
101 5 120
202 1 141
202 2 151
202 3 161
202 4 171
202 5 181
;
run;

**** TRANSPOSE THE NORMALIZED SBP VALUES TO A FLAT STRUCTURE.;
proc transpose
   data = sbp
   out = sbpflat
   prefix = VISIT;
      by subject;
	   id visit;
      var sbp;
run;  


Page 115, Program 4.12, "demog" should be "death"

**** INPUT SAMPLE DEATH DATA WHERE SUBJECT = PATIENT NUMBER AND
**** DEATH = 1 IF PATIENT DIED, 0 IF NOT.;
data death;
input @1 subject $3.
      @5 death 1.;
datalines;
101 0
102 0
;
run;
**** SET DEATH = 1 FOR PATIENTS WHO HAD ADVERSE EVENTS THAT
**** RESULTED IN DEATH.;
data aes;
merge death aes;
by subject;
   if adverse_event = "Fatal MI" then
      death = 1;
run;

proc print
   data = aes;
run;