I am running a logistic regression of marital status on age, age^2, religion importance, gender, race, education level, income, hours worked and residence area, using data from NLS.

After doing all the work of data cleaning I am running a logistic regression and even after converting the log odds into odds I get very small coefficients. Is there any way to rescue the model? Maybe drop some variables, although all of them seem important. I am not quite sure of the reason, but I assume that this is mainly due to the many categorical variables that I have, only age income and hours worked are continuous.

I cannot really think of any reason to convincingly argue about the low values of the coefficients. None of them are significant as well.

  • 2
    $\begingroup$ I want to see how low. Can you post your model summary? $\endgroup$
    – ABCD
    Apr 24, 2017 at 1:34

2 Answers 2


It seems that degree is entered into the model as an interval variable, while it is an ordered categorical one, and needs to be treated as one. The simplest way is to transform it into a Factor (as.factor(degree)). Without this transformation, the interpretation means that each increase in one(1) unit of degree will increase the odds of being married (if that is the dependent variable) by a factor of 1.108, for men, holding the other variables constant. You shouldn't interpret MA like this though. This would have been OK only if this was a count or continuous variable. What the coefficient means now, is the average difference in odds between each category pairs, but without set intervals, the model assumes that the interval is 1 (0-to-1, 1-to-2, etc..).


I panicked too fast. Turns out the log odds can be very low, but after taking the e-function things look normal. This is my output from R:

glm(formula = married ~ Female + age + Black + Hispanic + Msa + 
    rel_pref + yinc + hrs_wrkd + degree + degree_fem, family = binomial(link = logit), 
    data = nlsy2)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-2.4025  -1.0825   0.4939   1.0455   2.1968  

               Estimate Std. Error z value Pr(>|z|)    
(Intercept)  -5.585e+00  5.717e-01  -9.768  < 2e-16 ***
Female        4.595e-01  9.803e-02   4.687 2.77e-06 ***
age           1.691e-01  1.830e-02   9.241  < 2e-16 ***
BlackTRUE    -1.278e+00  6.716e-02 -19.029  < 2e-16 ***
HispanicTRUE -2.943e-01  6.510e-02  -4.520 6.18e-06 ***
Msa          -5.146e-01  5.171e-02  -9.952  < 2e-16 ***
rel_pref      5.254e-01  5.556e-02   9.457  < 2e-16 ***
yinc          1.007e-05  1.176e-06   8.562  < 2e-16 ***
hrs_wrkd      2.689e-05  2.577e-05   1.044   0.2967    
degree        1.026e-01  4.353e-02   2.356   0.0185 *  
degree_fem   -3.317e-02  5.766e-02  -0.575   0.5651    
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 9851.6  on 7106  degrees of freedom
Residual deviance: 8945.5  on 7096  degrees of freedom
AIC: 8967.5

Number of Fisher Scoring iterations: 4

> exp(coef(married1))
 (Intercept)       Female          age    BlackTRUE HispanicTRUE          Msa     rel_pref         yinc     hrs_wrkd 
 0.003755289  1.583298625  1.184297429  0.278581731  0.745073838  0.597713776  1.691114349  1.000010068  1.000026891 
      degree   degree_fem 
 1.108001765  0.967370363

I am googling like crazy on the topic of predicting marital status, but cannot find any previous work on it. Seems like people didn't think it is a good idea to run a model like this. If you have any suggestions on how this model can be improved, it would be much appreciated!

  • 1
    $\begingroup$ You can answer your own question if you have a clear answer. But I think you are mainly asking more questions. $\endgroup$ Apr 24, 2017 at 4:28
  • $\begingroup$ I am actually wondering how I could interpret the variable degree. So far degree=0 is no education, degree=1 is a High School degree, degree=2 is a BA and degree=3 is MA. Question1: How would I interpret the odds for someone with an MA? Question2: Do you see any difficulty in running a regression on a categorical variable grouped this way vs. creating a dummy for each degree and run a logistic regression on each of the degree dummies? $\endgroup$
    – bree
    Apr 24, 2017 at 5:13
  • $\begingroup$ Then formulate a new question. $\endgroup$ Apr 24, 2017 at 12:11
  • $\begingroup$ @Michael Chernick: There are 2 questions I am asking already. $\endgroup$
    – bree
    Apr 24, 2017 at 13:19
  • $\begingroup$ besides consolidating this with the question, can you tell us what exactly is marital status? (what are the categories, how was it constructed..). Thanks $\endgroup$ Apr 24, 2017 at 14:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.