Example 29.6: Log Odds Ratios and the ALR Algorithm
Since the respiratory data in Example 29.5
are binary, you can use the ALR algorithm
to model the log odds ratios instead of using
working correlations to model associations.
Here, a "fully parameterized cluster" model for the log odds ratio is fit.
That is, there is a log odds ratio parameter for each unique pair
of responses within clusters, and all clusters are parameterized identically.
The following statements fit the same regression model for the mean
as in Example 29.5 but use a regression model for the log odds
ratios instead of a working correlation. The LOGOR=FULLCLUST
option specifies a fully parameterized log odds ratio model.
proc genmod data=resp;
class id center;
model outcome=center2 active female age baseline / dist=bin;
repeated subject=id(center) / logor=fullclust;
run;
The results of fitting the model are displayed in Output 29.6.1
along with a table that shows the correspondence between
the log odds ratio parameters and the within cluster pairs.
Output 29.6.1: Results of Model Fitting
Log Odds Ratio Parameter Information |
Parameter |
Group |
Alpha1 |
(1, 2) |
Alpha2 |
(1, 3) |
Alpha3 |
(1, 4) |
Alpha4 |
(2, 3) |
Alpha5 |
(2, 4) |
Alpha6 |
(3, 4) |
Analysis Of GEE Parameter Estimates |
Empirical Standard Error Estimates |
Parameter |
Estimate |
Standard Error |
95% Confidence Limits |
Z |
Pr > |Z| |
Intercept |
-0.9266 |
0.4513 |
-1.8111 |
-0.0421 |
-2.05 |
0.0400 |
center2 |
0.6287 |
0.3486 |
-0.0545 |
1.3119 |
1.80 |
0.0713 |
active |
1.2611 |
0.3406 |
0.5934 |
1.9287 |
3.70 |
0.0002 |
female |
0.1024 |
0.4362 |
-0.7526 |
0.9575 |
0.23 |
0.8144 |
age |
-0.0162 |
0.0125 |
-0.0407 |
0.0084 |
-1.29 |
0.1977 |
baseline |
1.8980 |
0.3404 |
1.2308 |
2.5652 |
5.58 |
<.0001 |
Alpha1 |
1.6109 |
0.4892 |
0.6522 |
2.5696 |
3.29 |
0.0010 |
Alpha2 |
1.0771 |
0.4834 |
0.1297 |
2.0246 |
2.23 |
0.0259 |
Alpha3 |
1.5875 |
0.4735 |
0.6594 |
2.5155 |
3.35 |
0.0008 |
Alpha4 |
2.1224 |
0.5022 |
1.1381 |
3.1068 |
4.23 |
<.0001 |
Alpha5 |
1.8818 |
0.4686 |
0.9634 |
2.8001 |
4.02 |
<.0001 |
Alpha6 |
2.1046 |
0.4949 |
1.1347 |
3.0745 |
4.25 |
<.0001 |
|
You can fit the same model by fully specifying the z-matrix.
The following statements create a data set containing the full z-matrix.
data zin;
keep id center z1-z6 y1 y2;
array zin(6) z1-z6;
set resp ;
by center id;
if first.id
then do;
t = 0;
do m = 1 to 4;
do n = m+1 to 4;
do j = 1 to 6;
zin(j) = 0;
end;
y1 = m;
y2 = n;
t + 1;
zin(t) = 1;
output;
end;
end;
end;
run;
proc print data=zin (obs=12);
run;
Output 29.6.2 displays the full z-matrix for the first two clusters.
The z-matrix is identical for all clusters in this example.
Output 29.6.2: Full z-Matrix Data Set
Obs |
z1 |
z2 |
z3 |
z4 |
z5 |
z6 |
center |
id |
y1 |
y2 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
2 |
2 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
3 |
3 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
4 |
4 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
2 |
3 |
5 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
2 |
4 |
6 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
3 |
4 |
7 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
2 |
1 |
2 |
8 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
2 |
1 |
3 |
9 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
2 |
1 |
4 |
10 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
2 |
2 |
3 |
11 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
2 |
2 |
4 |
12 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
2 |
3 |
4 |
|
The following statements fit the model for fully parameterized
clusters by fully specifying the z-matrix. The results are identical
to those shown previously.
proc genmod data=resp;
class id center;
model outcome=center2 active female age baseline / dist=bin;
repeated subject=id(center) / logor=zfull
zdata=zin
zrow =(z1-z6)
ypair=(y1 y2) ;
run;
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.