% Econometría IN709
% Profesor: Carlos Noton
% Auxiliar: Nicolás Tagle

% Auxiliar N° 13: 

% Código desarrollado por: Nicolás Tagle

clc
clear all
cd 'C:\Users\nicolas\Documents\Clases\Econometría\Auxiliar 13'


% Este código utiliza las siguientes funciones creadas por el usuario:

    %u_mult: Calcula la utilidad indirecta
    %prob_multi: Calcula la probabilidad de elección
    %gfunc: Calcula función objetivo a minimizar.
    
% Este código calcula los parámetros de un modelo multinomial logit,
% utilizando máxima verosimilitud.

%% Estimacion Log Likelihood Ejemplo 15.4 Wooldridge

clc 
clear all

[data,label] = xlsread('data.xls');

N=size(data,1); %Tamaño de la muestra
K=3; %Número de alternativas

X=[data(:,2:5) ones(N,1) ];% Última columna constante

Y=data(:,6);

y=valores(Y,K);

M=size(X,2);%Cantidad de atributos considerando alpha

%Normalizar Beta para la opción 1
B1=zeros(M,1);
%Crear Beta 0 para el resto de las alternativas 2 y 3
B0=rand(M,K-1);
%Estimación usando fminsearch

options=optimset('MaxFunEvals',10000,'GradObj','off');

[b_est,LL] = fminunc(@(b)(log_like(b,B1,X,Y)),B0,options);


%% Evalúo

P_est=prob_multi(X,[B1 b_est]);





