turn on suggestions

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

Showing results for

Find a Community

- Home
- /
- Analytics
- /
- Stat Procs
- /
- Reverse parameters in multinomial logit regression

Topic Options

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

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

05-11-2017 04:41 AM - edited 05-11-2017 04:42 AM

Hello,

I have this multinomial logit model:

```
proc logistic data=edu.educationClean;
class Langue(ref='0') /param=ref;
model edu3(ref='2')= Langue /link=glogit rsquare;
weight pond / norm;
where model=1;
run;
```

With the following output:

Analysis of Maximum Likelihood Estimates | |||||||
---|---|---|---|---|---|---|---|

Parameter | edu3 | DF | Estimate | Standard Error |
Wald Chi-Square |
Pr > ChiSq | |

Intercept | 0 | 1 | -0.7505 | 0.0134 | 3131.3792 | <.0001 | |

Intercept | 1 | 1 | 0.1590 | 0.0103 | 236.5849 | <.0001 | |

Langue | 1 | 0 | 1 | -0.0533 | 0.0841 | 0.4021 | 0.5260 |

Langue | 1 | 1 | 1 | -0.2527 | 0.0677 | 13.9402 | 0.0002 |

Langue | 2 | 0 | 1 | 1.5045 | 0.0729 | 426.1495 | <.0001 |

Langue | 2 | 1 | 1 | 0.2267 | 0.0773 | 8.6057 | 0.0034 |

In addition to this, I would like to have reverse parameters (I mean edu3=2 vs other) and their p values. I think I can do it manually (but maybe I'm wrong), for example, for langue=1, by doing -(-0.0533+-0.2527) to get the parameter for edu3=2 compared to other categories. However, with this method, I don't get p values. Is there a way to produce this automacially in the output?

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

05-11-2017 10:38 AM

That implies that you want to model a logit defined as log[ Pr(Edu3=2)/(1-Pr(Edu3=2) ]. To do this, simply create a new response variable: new=(edu3=2); and fit a binary logistic model using it as the response.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

05-11-2017 10:55 AM - edited 05-12-2017 05:05 AM

That is what I tried.

```
data edu.educationClean;
set edu.educationClean;
HIGH=0;
if edu3=2 then HIGH=1;
run;
proc logistic data=edu.educationClean;
class Langue(ref='0') /param=ref;
model HIGH(ref='0')= Langue /link=glogit rsquare;
weight pond / norm;
where model=1;
run;
```

It gives this output:

SAS Output

Analysis of Maximum Likelihood Estimates | |||||||
---|---|---|---|---|---|---|---|

Parameter | HIGH | DF | Estimate | Standard Error |
Wald Chi-Square |
Pr > ChiSq | |

Intercept | 1 | 1 | -0.4974 | 0.00963 | 2667.2291 | <.0001 | |

Langue | 1 | 1 | 1 | 0.1913 | 0.0616 | 9.6420 | 0.0019 |

Langue | 2 | 1 | 1 | -0.7824 | 0.0675 | 134.4464 | <.0001 |

Which is not what I expected as parameters. From the multinomial outputs, in my mind, the parameter for edu3=2 when langue=1 should be -(-0.0533+-0.2527)=0.306. However, it is 0.1913 when using a binomial regression. Maybe something is wrong with my reasoning.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

05-11-2017 03:36 PM

The generalized logit model you fit originaly is:

l0=log(p0/p2)=int0+lang01+lang02

l1=log(p1/p2)=int1+lang11+lang12

You now fit the model l2=log(p2/(p0+p1))=int+lang1+lang2.

When lang=1, under that first model:

l0=int0+lang01

l1=int1+lang11

And in the second model:

l2=int+lang1

Algebraically, I don't see that -(lang01+lang11) as you want to do, gets you to the lang1 parameter in the second model.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

05-11-2017 04:07 PM

So there is no way to get log(p2/(p0+p1)) directly from the multinomial logit parameters?

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

05-12-2017 04:25 AM

My reasoning was the following:

In a binomial logit, when we change the reference category of the modelized variable, parameters for explainatory variables are just the negative. For example, in my binomial logit, if the reference category were 1 rather than 0, then parameter for langue=1 would be -(0.1913). So I though it was the same for a multinomial logit. Maybe, obviously, I'm wrong.