Computing likelihood ratio pseudo-R2

4 views (last 30 days)
Andreas
Andreas on 17 Jan 2014
Edited: Arseny on 4 Sep 2017
I wish to compute the likelihood ratio pseudo-R2 from a logistic regression using glmfit.
According to the Wikipedia definition it is defined as
R2 = (DevianceNull-DevianceModel)/(DevianceNull).
Does DevianceModel correspond to dev returned from glmfit?
[~, dev] = glmfit(X, Y, 'binomial');
In that case, is the pseudo-R2 computed as?
[~, devModel] = glmfit(X, Y, 'binomial');
[~, devNull] = glmfit(zeros(length(Y), 1), Y, 'binomial');
R2 = (DevNull-DevModel)/(DevNull);
Many thanks

Answers (1)

Arseny
Arseny on 4 Sep 2017
Edited: Arseny on 4 Sep 2017
It would be your code, but with
[~, devNull] = glmfit(X, Y(randperm(length(Y))), 'binomial');
Or better yet, this row repeated several times, and devNull estimation averaged over these several attempts.

Community Treasure Hunt

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

Start Hunting!