maximize log likelihood function
4 views (last 30 days)
Show older comments
Hi, Ive been stuggling with this code for maximizing log likelihoood.
I recently started to learn Matlab so Im confused with function in Matlab and how it works.
hope I can get some help from here
here is my code.
data = readtable('MROZ.csv');
data = data{:,[1, 20, 6, 19, 22, 5, 3, 4]};
y = data(:,1);
x = data(:,[2,3,4,5,6,7,8]);
int = ones(753, 1);
X = horzcat(int, x);
beta = X\y; % LPM coefficient;
[beta,fval,exitflag] = fminunc(@probitnll,beta,X,y);
function nll = probitnll(beta,X,y)
yhat = X * beta;
G = normcdf(yhat);
nll = sum(y .* log(G) + (1-y) .* log(1-G));
end
1 Comment
Cris LaPierre
on 28 Aug 2020
We don't have your data so can't run the code. What error message are you getting? What isn't working?
Answers (0)
See Also
Categories
Find more on Problem-Based Optimization Setup in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!