Hi Everyone! I'll love to understand one of the tables of my Proc Genmod Least Squares Means Output! My question is about the estimates between the response variable (guide_levels) and independent variable (education). Below is my output and my code:
proc genmod data=factorsguide;
class education_cat (ref="0") / param=glm;
model guide_levels (ref="None") = education_cat/ dist=multinomial
link=cumlogit type3;
lsmeans education_cat / ilink oddsratio diff cl;
run;
*I didn't want to copy and paste my entire table**P values are all <.0001*
guide_levels |
education_cat |
estimate | standard error |
Adequate | 1 | -1.8848 | 0.06165 |
Adequate | 2 | -1.2502 | 0.04950 |
High | 1 | -0.4315 | 0.05490 |
High | 2 | 0.2030 | 0.04466 |
Insufficient | 1 | 0.9887 | 0.05688 |
Insufficient | 2 | 1.6232 | 0.05217 |
What does a negative value mean for the estimate? I know this is probably a simple answer, but I've been looking in various forums and documentations.
The values shown in the Estimate column are estimated logit (log odds) values for the associated Education level. Logits can have any real number. Since your response variable (Guide levels) shows 3 values in the table, I assume it has 4 possible levels resulting in 3 cumulative logits being modeled. The cumulative logits in an ordinal multinomial model like yours with response levels 1, 2, and 3 are, by default, log(p1/(p2+p3)) and log((p1+p2)/p3). That is, they divide the ordered response levels in the two possible places. Similarly for your 4 level response with 3 possibly divisions. The first column in the table identifies the logit by one of the response levels appearing in the numerator.
But I am concerned that your response levels do not sound like they are in logically ascending or descending order as they must be in order for the results to have any meaning. You should examine the Response Profile table to verify and then rename your levels as needed to assure that they are logically ordered.
Since you used the ILINK option, your table should also have a Mean column which gives estimated cumulative probabilities (p1, p1+p2, p1+p2+p3) for each Education level which are usually more meaningful than the estimated logits in the Estimate column.
This makes a lot more sense! I'll focus on the mean column instead of estimate column. I also changed my code to make sure my variables are in correct ascending order! Below is the new code and new output!
proc genmod data=factorsguide;
class education_cat (ref="0") / param=glm;
model guide_levels_f (ref="1") = education_cat/ dist=multinomial
link=cumlogit type3;
lsmeans education_cat / ilink oddsratio diff cl;
run;
Guide_levels | education_cat | estimate | SE | z Value | Pr > |z| | Mean |
1 | 1 | -0.9893 | 0.05682 | -17.41 | <.0001 | 0.2710 |
1 | 2 | -1.6341 | 0.05227 | -31.26 | <.0001 | 0.1633 |
1 | 3 | -1.8087 | 0.06240 | -28.99 | <.0001 | 0.1408 |
1 | 0 | -0.4212 | 0.1437 | -2.93 | 0.0034 | 0.3962 |
2 | 1 | 0.4304 | 0.05484 | 7.85 | <.0001 | 0.6060 |
2 | 2 | -0.2144 | 0.04480 | -4.79 | <.0001 | 0.4466 |
2 | 3 | -0.3890 | 0.05527 | -7.04 | <.0001 | 0.4040 |
2 | 0 | 0.9985 | 0.1447 | 6.90 | <.0001 | 0.7308 |
3 | 1 | 1.2998 | 0.05769 | 22.53 | <.0001 | 0.7858 |
3 | 2 | 0.6551 | 0.04600 | 14.24 | <.0001 | 0.6582 |
3 | 3 | 0.4804 | 0.05572 | 8.62 | <.0001 | 0.6179 |
3 | 0 | 1.8679 | 0.1462 | 12.77 | <.0001 | 0.8662 |
*I didn't paste my entire output*
Hope this output makes sense! Thank you for your help!
This makes a lot more sense! I added "descending" to my Proc Genmod line and removed the "REF" in my model statement! As you pointed out, the log of my previous code indicated that my REF was being ignored.
This has been extremely helpful, and I really appreciate it!
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.