Hello all,
I was wondering what would be the best procedure to use to calculate pooled odds ratio (OR)? I have a raw data for 6 separate studies where a certain drug (and placebo) were tested for a health condition. I can calculate the ORs for the individual studies but I am having a hard time to calculate the pooled OR when I put all the record level information into one file. Below is the descriptive stats for those studies:
Study | Placebo | Patient_died | Count | Percent |
STUDY 1 | No | No | 597 | 21.5601 |
STUDY 1 | No | Yes | 78 | 2.8169 |
STUDY 1 | Yes | No | 1851 | 66.8472 |
STUDY 1 | Yes | Yes | 243 | 8.7757 |
STUDY 2 | No | No | 1245 | 48.0139 |
STUDY 2 | No | Yes | 155 | 5.9776 |
STUDY 2 | Yes | No | 1086 | 41.882 |
STUDY 2 | Yes | Yes | 107 | 4.1265 |
STUDY 3 | No | No | 768 | 55.3314 |
STUDY 3 | No | Yes | 92 | 6.6282 |
STUDY 3 | Yes | No | 477 | 34.366 |
STUDY 3 | Yes | Yes | 51 | 3.6744 |
STUDY 4 | No | No | 238 | 19.2246 |
STUDY 4 | No | Yes | 46 | 3.7157 |
STUDY 4 | Yes | No | 790 | 63.8126 |
STUDY 4 | Yes | Yes | 164 | 13.2472 |
STUDY 5 | No | No | 590 | 65.1934 |
STUDY 5 | No | Yes | 118 | 13.0387 |
STUDY 5 | Yes | No | 171 | 18.895 |
STUDY 5 | Yes | Yes | 26 | 2.8729 |
STUDY 6 | No | No | 1345 | 33.0629 |
STUDY 6 | No | Yes | 202 | 4.9656 |
STUDY 6 | Yes | No | 2239 | 55.0393 |
STUDY 6 | Yes | Yes | 282 | 6.9322 |
I know that the pooled OR can be calculated both from the individual study ORs (which are below) and from the pooled data set where all the raw data for those studies is under one file.
OR | LCL | UCL | |
STUDY 1 | 1.0048 | 0.7661 | 1.3179 |
STUDY 2 | 0.7914 | 0.6105 | 1.0258 |
STUDY 3 | 0.8925 | 0.6222 | 1.2802 |
STUDY 4 | 1.0741 | 0.7511 | 1.5359 |
STUDY 5 | 0.7602 | 0.4811 | 1.2012 |
STUDY 6 | 0.8386 | 0.6915 | 1.017 |
I was wondering if someone can help to calculate the pooled OR either from the individual study ORs or from the pooled data set.
For reference below is the SAS code I use that does NOT yield the pooled OR.
proc freq data=master;
by study;
tables placebo*patient_died/nopercent norow nocol out=master_pooled;
run;
proc freq data=master_pooled;
weight count;
tables patient_died*placebo/chisq relrisk;
run;
Thanks a lot in advance!
Recep
proc freq data=have;
tables study * placebo * patient_died / cmh;
weight count;
run;
The CMH option in the TABLES statement provides the overall/adjusted odds ratio for multiway (stratified) 2x2 tables. See the documentation section Adjusted Odds Ratio and Relative Risks .
proc freq data=have;
tables study * placebo * patient_died / cmh;
weight count;
run;
The CMH option in the TABLES statement provides the overall/adjusted odds ratio for multiway (stratified) 2x2 tables. See the documentation section Adjusted Odds Ratio and Relative Risks .
Thanks a lot for very prompt and accurate response!
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.