BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
Diels_O
Obsidian | Level 7

Dear professors:

     I was stucked using the General esmated equation to perform a "global outcome analysis" for multiple binary outcome, a statistical method used in NINDS trail.

Diels_O_0-1654933716897.png

Diels_O_1-1654933742466.png

Can I get help from you?

I'll be deligted if i can get your help!!!

Thanks!!!!

 

1 ACCEPTED SOLUTION

Accepted Solutions
StatDave
SAS Super FREQ

That message about PROC GEE being experimental indicates you are using a very old release of SAS. More current releases include the ESTIMATE, LSMEANS, and other statements. If you must use that older release, use PROC GENMOD instead. Since your VISIT variable just indicates the separate outcome variables, if you want to estimate the individual GROUP odds or the odds ratio comparing groups separately for each of the outcomes, then use several PROC LOGISTIC runs to fit the model separately for each outcome.

View solution in original post

10 REPLIES 10
Rick_SAS
SAS Super FREQ

You don't need to use a macro. Modern versions of SAS support the GEE procedure,

which is designed to fit models like this. I suggest starting by reading the overview and the Getting Started example.

 

For older versions of SAS, you can often use PROC GENMOD to fit the GEE.

The doc includes an example of a binary response model.

sbxkoenk
SAS Super FREQ

Hello,

I was about to answer the same as @Rick_SAS .

 

I put some more resources for GEE-modelling :

 

SAS/STAT 15.1 User's Guide ( ... also put by Rick)
The GEE Procedure

https://go.documentation.sas.com/doc/en/pgmsascdc/9.4_3.4/statug/statug_gee_overview.htm


Usage Note 22871: Types of logistic (or logit) models that can be fit using SAS®
https://support.sas.com/kb/22/871.html

 

Usage Note 30333: FASTats: Frequently Asked-For Statistics
https://support.sas.com/kb/30/333.html

Look for GEE (25 hits)

 

Generalized Estimating Equations (note from R&D)
https://support.sas.com/rnd/app/stat/topics/gee/gee.htm

 

Your question is very general.
Once you start implementing and you can put some more focused questions, feel free to do so.

I guess @StatDave will chime in at that moment. He is answering many of the GEE questions on these communities. (which is another tip, screen the SAS communities to search the info you want)

 

Koen

Diels_O
Obsidian | Level 7
Thanks for your help, best wishes!
Diels_O
Obsidian | Level 7

Sincerely thanks for your help!

However, what I meant was to perform a comparison for more than 1 binary outcome, and to attain a global odds ratio that describes the effect of my exposure on multiple response variables.

StatDave
SAS Super FREQ

I assume that the approach suggested in your text clip is to treat the responses on the multiple outcome variables for each subject in the same was as repeated measurements on a single outcome variable. It would then treat each subject as a cluster in the GEE analysis. This can be done by arranging your data so that each subject has as many observations in the data as there are outcome variables. There should be a single response variable, call it Y, that contains the multiple responses on the outcome variables for each subject. There should also be a subject identifier variable, call it ID, that has the same, unique value for each of a particular subject's observations. Then you can fit the model in PROC GEE. For example, assuming that your only predictor variable is a binary treatment variable, call it TRT with values 0 and 1, then the following does the analysis and provides a common odds ratio estimate.

proc gee;
class id;
model y=trt / dist=binomial;
repeated subject=id;
estimate 'OR' trt 1 / exp;
run;

But you should be cautious because you are assuming that the odds ratio estimates for the effect of the treatment on the various outcomes are similar enough to make a common estimate reasonable.

 

Another approach to this is a multivariate analysis that can be done in PROC CATMOD.

Diels_O
Obsidian | Level 7

Thanks for your help!

But for the data arrangement, here I post an example of my realization, please judge whether it is correct:

Initial data:

Diels_O_0-1655106140068.png

Data after arrangement:

Diels_O_1-1655106387207.png

And I want to export the odds ratio for these four outcomes

The program maybe was:

proc gee;
class id;
model Effect=trt / dist=binomial;
repeated subject=id;
estimate 'OR' trt 1 / exp;
run

Is this correct?

Thanks!

 

Diels_O
Obsidian | Level 7
And this 4 response variables were different scales, maybe not "repeat measurement", and I also want to get the odds ratio for the overall anaysis as well as the odds ratio for each sacle in the analysis, thanks.
StatDave
SAS Super FREQ

As I look at this again, the rearranged data seems about right with the binary responses in your "EFFECT" variable that you use as the response variable. However, it looks like at least ID 3 is not right - the original responses are 1 1 0 0, but in the rearranged data, the values for ID 3 in the EFFECT variable is 1 0 0 0. Carefully check over the data.

 

No, the four, 0,1-coded binary outcome values for a subject should appear in a single new response variable. You should not be using a code to indicate the response. See the example titled "Comparison of the Marginal and Random Effect Models for Binary Data" in the PROC GEE documentation. Notice how it transforms the multiple responses for each subject that are in a single observation into multiple observations.

Diels_O
Obsidian | Level 7

Thanks, there was a mistake in my example data previous, so after learning the model I have made similar arrangement to my data,(notice the 4 outcome was chosen for eaxample,the final analysis outcomes were independence structure)

data WORK.stroke;
   set work.stroke;
   Visit=1;  Outcome=D90_mRS_score_0to1;  output;
   Visit=2;  Outcome=D90_mRS_score_0to2;  output;
   Visit=3;  Outcome=D90_mRS_score_0to3;  output;
   Visit=4;  Outcome=D90_death;  output;
run;

After the arrangement, I've try your program, here, enroll_order was (ID), and Group is a two arm binary variable(TRT), however, the sas program warning.

run;
proc gee data = work.stroke descend;
class enroll_order;
model outcome=group / dist=binomial;
repeated subject=enroll_order;
estimate 'OR' group 1/exp;
run;
43   proc gee data = work.stroke descend;NOTE: The GEE procedure is experimental in this release of the SAS system.
44   class enroll_order;
45   model outcome=group / dist=binomial;
46   repeated subject=enroll_order;
47   estimate 'OR' group 1/exp;
     --------
     180
ERROR 180-322: Statement is not valid or it is used out of proper order.
48   run;

Also, I've try the code similar to the formal example:

proc gee data=work.stroke descend;
   class enroll_order group;
   model Outcome=Group/
         dist=bin link=logit;
   repeated subject=enroll_order / corr=exch corrw;
run;

And here're my result:

Diels_O_0-1655194321690.pngDiels_O_1-1655194338499.png

I have two question here:

 

How can I get the odds value for each Visit and the over all effect of gourp?

Thanks dave.

StatDave
SAS Super FREQ

That message about PROC GEE being experimental indicates you are using a very old release of SAS. More current releases include the ESTIMATE, LSMEANS, and other statements. If you must use that older release, use PROC GENMOD instead. Since your VISIT variable just indicates the separate outcome variables, if you want to estimate the individual GROUP odds or the odds ratio comparing groups separately for each of the outcomes, then use several PROC LOGISTIC runs to fit the model separately for each outcome.

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

What is ANOVA?

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.

Discussion stats
  • 10 replies
  • 1528 views
  • 7 likes
  • 4 in conversation