new;
format /m1 /rdn 9,4;
@*******Of[^̓ǂݍ***********@
load x[248,7]=c:\sum2016\dataset1.csv;

@********f̐胋[`[**********@
library maxlik;
#include maxlik.ext;
maxset;

clearg prob,param,
       bounce,detour,
       a_alt,cs_ind,c_ind,deno,nume,pp,b,res;

output file=c:\sum2016\est01.txt on;
__output = 2;

proc li(b,x);
pp=b;
@b=zeros(6,1);@

    detour=exp(b[1]+b[2]*(x[.,2]*24)+b[3]*((x[.,4]*24).<=7)+b[4]*((x[.,4]*24).>7).*((x[.,4]*24).<=8)+@b[5]*((x[.,4]*24).>8).*((x[.,4]*24).<=9)+@b[5]*(x[.,3].==100)+@b[6]*(x[.,3].==410)+@b[6]*(x[.,7]*24));

    prob=(x[.,1].==1).*(1./(1+detour))+(x[.,1].==2).*(detour./(1+detour));

param=b;
retp(ln(prob));
endp;

@*********parameter̐Ȃ***********@
let _max_parnames = 

"detour  "
"worktime"
"st_-7   "
"st_7-8 "
"car_d  "
"tsuukin "
@"bicy_d  "@;

start=zeros(6,1);
@*************************************@
res={};

{b,ff,gg,cov,retcode}=maxlik(x,0,&li,start);

call maxprt(b,ff,gg,cov,retcode);

res1=b|sqrt(diag(cov));
res=res|(res1');

Lb=sumc(li(b1,x));
L0=sumc(li(start,x));

print L0~Lb~(-Lb+rows(start));

output off;

create f10=c:\sum2016\para with x,1,4;
p=writer(f10,param);
f10=close(f10);

end;



