MATLAB Answers

Logistic mixed-effect regression example

20 views (last 30 days)
Michael Yudelson
Michael Yudelson on 15 Feb 2012
Answered: Peng Li on 7 Aug 2020
Hello, I was trying to make sense out of NLMEFIT help in order to fit logistic mixed-effect regression and I could not. In R syntax is straight forward. How would I do it in MATLAB? Thank you, Michael

Answers (5)

Tom Lane
Tom Lane on 21 Feb 2012
In that case nlmefit would not be suitable, because it fits models with a continuous response. The glmfit function would be suitable, but it doesn't support mixed effects so you could only use that if you were willing to treat your predictors as having fixed effects. Unfortunately there's no Statistics Toolbox function that performs mixed effects logistic regression.
  2 Comments
Tom Lane
Tom Lane on 18 Oct 2012
I can't think of a good way to do what you want. The anovan function isn't suitable for binary or multivariate responses. The glmfit function and other functions aren't set up for random effects.
You can of course use glmfit with dummy variables for the subjects, treating them as fixed effects. In the latest release you can use GeneralizedLinearModel.fit with categorical predictors, and not have to create dummy variables yourself. But neither of these supports random effects. Nor do they deal with multivariate responses.

Sign in to comment.


Tom Lane
Tom Lane on 15 Feb 2012
You could use NLMEFIT to fit a response with normally distributed errors around a curve with a logistic shape. But there is no function in the Statistics Toolbox for fitting a mixed-effect model to a logistic regression to model the probability for a binomial response variable.

Michael Yudelson
Michael Yudelson on 15 Feb 2012
Tom thank you for a response. I know I am being dumb, but I'm not comfortable with stats at this high level. I guess I was looking for an example, anywhere. NLMEFIT is unusable for me with current help :(
  2 Comments
Michael Yudelson
Michael Yudelson on 21 Feb 2012
My response is a binary variable (success/fail) and my random predictor are a student_id and a question_id. I wanted to start with just those two and an overall bias.

Sign in to comment.


Michael Yudelson
Michael Yudelson on 21 Feb 2012
Tom, my response is a binary variable (success/fail) and my random predictor are a student_id and a question_id. I wanted to start with just those two and an overall bias.

Peng Li
Peng Li on 7 Aug 2020
You could use fitglme now to fit mixed effect logistic regression models. You can specify the distribution as Binomial and this way the Link function will be made as logit as well. Then you will be fitting a mixed effect logistic regression model (of course you need to specify random effects correctly in the formula).

Community Treasure Hunt

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

Start Hunting!