BookmarkSubscribeRSS Feed
Demographer
Pyrite | Level 9

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?

5 REPLIES 5
StatDave
SAS Super FREQ

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. 

Demographer
Pyrite | Level 9

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. 

StatDave
SAS Super FREQ

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.

Demographer
Pyrite | Level 9

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

Demographer
Pyrite | Level 9

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.

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

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
  • 5 replies
  • 1522 views
  • 0 likes
  • 2 in conversation