Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Home
- /
- Analytics
- /
- Stat Procs
- /
- How to do glimmix model with nominal (unordered) outcome?

Options

- RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content

Posted 06-04-2019 07:31 PM
(689 views)

I am trying to fit a multinomial logistic model with random effects (ID is the cluster) and a 3-level nominal outcome, the outcome is not ordinal. I used SAS code like below:

proc glimmix; class ID outcome; model outcome(ref=first) = explanatory/ dist=multinomial link=glogit; random intercept / subject=ID group=outcome; run;

But the model did not work and said G matrix is not positive definite. I tried glogit model several times with different outcomes and clusters, it either runs out of memory or has other issues. I wonder if I did anything wrong or there is a better way to do this kind of models in SAS?

5 REPLIES 5

- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content

You could instead try fitting a GEE model:

```
proc gee;
class ID;
model outcome(ref=first) = explanatory/
dist=mult link=glogit;
repeated subject=ID;
run;
```

- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content

- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content

- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content

Thanks, the response just has 3 levels and I only used one predictor with 2

levels, the sample size is about 500. Then I guess it is just because of

the computer power? Besides the computer power, I am curious if there is

any statistical computation method which might help?

Thanks again!

levels, the sample size is about 500. Then I guess it is just because of

the computer power? Besides the computer power, I am curious if there is

any statistical computation method which might help?

Thanks again!

- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content

So, you really just have an Sx2x3 table, where S is the number of subjects. For that, you can use a nonmodel-based approach. You could use the CMH statistics in PROC FREQ with your subject variable as the stratifying variable. For example, if your 2 level predictor is X and your 3 level response is Y:

```
proc freq;
table s*x*y/cmh noprint;
run;
```

The second CMH statistic tests if X and Y are associated. See the discussion in the FREQ documentation for details.

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. **Registration is now open through August 30th**. Visit the SAS Hackathon homepage.

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.