关于这个模型,我还是有些疑心想向大家请教,请赐教!
看下我的程序:
stset et,failure(y)
capture program drop splitpps
program splitpps
args lnf theta1 theta2 theta3
tempvar p s d l
quietly gen double `l'=exp(-`theta1')
quietly gen double `d'=exp(`theta2')/(1+exp(`theta2'))
quietly gen double `s'=1-`d'+`d'*(1/(1+(`l'*$ML_y1)^(1/`theta3')))
quietly gen double `p'=ln(`d')-ln(`theta3')+((1/`theta3')-1)*ln($ML_y1)+(1/`theta3')*ln(`l')-2*ln(1+(`l'*$ML_y1)^(1/`theta3'))
quietly replace `lnf'=$ML_y2*(`p')+(1-$ML_y2)*ln(`s')
end
ml model lf splitpps (et= AGE salary1 job1 education1 )(y= AGE salary1 job1 education1 )/shape
ml maximize
问题一:变量et表示的是时间变量,y 到底代表什么呢?SPD模型是将样本分成两种类型,分布由Y、和R表示,Y=1是,R=1;R=0时,由部分变量Y=1
问题二:R=0时,由部分变量Y=1时,此时ti>Ti,那么这个条件在程序中怎么体现?
问题三:想要输出split 参数,采用什么命令呢?
高手啊,谁帮我解惑啊!