MATLAB Answers

run glmfit , why get Warning: X is ill conditioned, or the model is overparameterized

29 views (last 30 days)
Jie Li
Jie Li on 19 Aug 2021
Answered: Jeff Miller on 20 Aug 2021
run code for a linear regrssion. X has 5 predictors, Y is one response vector with ordinal values(1 to 5)
b = glmfit(X,Y);
Warning: X is ill conditioned, or the model is overparameterized, and some coefficients are not identifiable. You should use caution in making predictions.
similarly when running b = mnrfit(X, Y);
Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 4.607712e-20.
Does anyone know the reason, how to fix the issue?
  3 Comments

Sign in to comment.

Answers (1)

Jeff Miller
Jeff Miller on 20 Aug 2021
The problem is that the x1-x5 values sum to 24 in every row. This means that any one of the x's can be predicted from the rest of the x's, which is not allowed in regression models. I suggest you drop one of the x's from the predictor set.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!