I am building a logistic regression of TREATED (yes/no) and BLOODLOSS_PERCENT (continuous, skewed right). I have also built a multivariate logistic regression to control for possible confounders, but the issue is the same. I am getting an odds ratio for BLOODLOSS_PERCENT to be 50000+. Looking at the effect plot and the histogram of deviance residuals, the model appears to be fitting well, but there is obviously an issue I can't identify. Do you have any suggestions?


enter image description here enter image description here

  • $\begingroup$ seems to make sense that...if patients have large percent of their blood lost...that they will be treated $\endgroup$
    – bdeonovic
    Jun 22, 2023 at 19:23
  • $\begingroup$ Maximum likelihood estimates of logistic regression coefficients are biased. Use Firth logistic regression. See Kosmidis (2014) or Rainey & McCaskey (2015) for a review. $\endgroup$
    – Noah
    Jun 22, 2023 at 19:39
  • $\begingroup$ Please can you add more medical details to your question. What do you expect the odds ratio to be? What is meaningful blood loss. I am guessing the issue you have is non linearity (with no untreated over 0.8% blood loss. Splines would help and perhaps a nonlinear transformation of bloodloss, that better captures relationship to log odds. Treatment $\endgroup$
    – seanv507
    Jun 22, 2023 at 20:12
  • $\begingroup$ RE seanv507: the analysis is exploratory, so there is not an expected odds ratio. That being said, we would not expect the odds to increase by more than say 100% per unit of BLOODLOSS_PERCENT. I attempted cubic spines, and it seems to make the problem worse. The OR for each paramter tended even more toward infinity. $\endgroup$ Jun 22, 2023 at 20:30
  • 1
    $\begingroup$ Depending on the other covariates in your model, your 'unreasonable' odds ratio could be a sign of near-perfect separation. $\endgroup$
    – Durden
    Jun 22, 2023 at 22:05

1 Answer 1


The first plot you present is a bivariate summary using a logistic curve. I can see plainly that the odds ratio, which is the slope of the S curve, is a sound finite value. The number of cases to non-cases overlap over a suitable region of the "X" values.

A multivariate logistic regression is another story. After more and more variables are added, it is hard to visualize the changes to the OR. A fininte OR becomes subject to separation. Separation means your OR = $\infty$. Of course, the estimate comes from a numerical solver so they just stop at a "big value", but it might not be as unreasonable as you say. OR=$\infty$ means the S shaped curve becomes a step function, with 0% probability of event prior to the step and 100% probability of the event after the step.

But it can be a spurious finding as well. The most likely cause of a spurious infinite odds ratio is a crazy approach to OR adjustment, either the wrong variables or too many of them. The wrong variables, like colliders - things that are caused by the outcome, can induce a relationship with the exposure.

I would suggest to build the multivariate model one variable at a time, and look closely at the number of parameters reported as a fraction of the sample size.

  • $\begingroup$ The OR is 56,686, which doesn't make sense in context. That basically means if BLOODLOSS_PERCENT increases by any amount, we are more or less guaranteed to be treated. Cubic splines don't help, and if anything, make the problem worse. Adding covariates to the model decreases the OR, but it is still in the tens of thousands. Is this simply a relationship that cannot be modeled due to separation? $\endgroup$ Jun 22, 2023 at 20:39
  • $\begingroup$ @jrheintz91 I think you're missing a few points, regardless of the actual value of the OR, it is a divergent OR and we can't say why. It would help to build your model one variable at a time. What are the results of the bivariate analysis? It's surely a sensible value. $\endgroup$
    – AdamO
    Jun 27, 2023 at 5:02

Your Answer

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

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