Chapter 13, Section 13.4

 

 

Muscatine Coronary Risk Factor Study

 

 

Marginal Logistic Regression Model

 

 

 

data obesity;
     infile 'muscatine.dat';
     input id gender baseage age occasion y;


cage=age - 12;
cage2=cage*cage;


title1 Marginal Logistic Regression Model for Obesity;
title2 Muscatine Coronary Risk Factor Study;

proc genmod descending;
     class id occasion;   
     model y=gender cage cage2 gender*cage gender*cage2  / dist=bin link=logit 
     type3 wald;
     contrast 'Age X Gender Interaction' gender*cage 1, gender*cage2 1 /wald;
     repeated subject=id / withinsubject=occasion logor=fullclust;
run;


<Selected Output>

 

 

proc genmod descending;
     class id occasion;   
     model y=gender cage cage2 / dist=bin link=logit 
     type3 wald;
     repeated subject=id / withinsubject=occasion logor=fullclust;
run;


<Selected Output>

 

 

proc genmod descending;
     class id occasion;   
     model y=gender cage cage2 / dist=bin link=logit 
     type3 wald;
     repeated subject=id / withinsubject=occasion 
         logor=zrep( (1 2) 1 0,
                           (1 3) 0 1,
                           (2 3) 1 0);
run;

<Selected Output>

 

 

 

 

 

Clinical Trial of Antibiotics for Leprosy

 

 

Marginal Log-linear Regression Model

 

 

data leprosy;
     infile 'leprosy.dat';
     input drug $ y1 y2;
id+1;

A=0;
B=0;
Antibiotic=0;

if drug='A' then A=1;
if drug='B' then B=1;
Antibiotic=A+B;


data leprosy;
     set leprosy;
     y=y1; time=0; output;
     y=y2; time=1; output;



title1 Marginal Log-linear Regression Model for Leprosy Bacilli;
title2 Clinical Trial of Antibiotics for Leprosy;

proc genmod;
     class id;
     model y= time A*time B*time / d=poisson link=log type3 wald;
     contrast 'Drug x Time Interaction' A*time 1, B*time 1 / wald;
     repeated subject=id / modelse type=un corrw;
run;

<Selected Output>

 

 

proc genmod;
     class id ;
     model y= time Antibiotic*time  / d=poisson link=log type3 wald;
     repeated subject=id / modelse type=un corrw;
run;

<Selected Output>

 

 

 

Arthritis Clinical Trial

 

 

Marginal Proportional Odds (Ordinal) Regression Model

 

 

data arthritis;
     infile 'arthritis.dat';
     input id trt age y1 y2 y3 y4;

data arthritis;
     set arthritis;
     y=y1; month=0; output;
     y=y2; month=2; output;

     y=y3; month=4; output;
     y=y4; month=6; output;
run;

 

data arthritis;

     set arthritis;

     if y=. then delete;

**********************************************************;
*   Transform  month = square-root(month)            *;
**********************************************************;
sqrtmonth=month**0.5;


title1 Marginal proportional odds regression model for global impression scale;
title2 Arthritis Clinical Trial;

proc genmod;

     class id;
     model y = trt sqrtmonth trt*sqrtmonth / d=mult link=cumlogit type3 wald;
     repeated subject=id / type=ind;
run;

<Selected Output>