Hi,
I try to estimate a mixture of normal models by NLS.
ie I try to fit the following non linear least square
model:
y=w*normcdf((xb-u1)/sigma1)+(1-w)*normcdf((xb-u2)/sigma2)
I write the following code in stata, however the stata
program shows the following error message:
error #199 occurred in program nlrfgmm
could not restore sort order because variables were
dropped
could you please tell me what mistakes I made for this
program?
thanks
wei
program define nlrfgmm
version 7.0
if "`1'"=="?" {
global S_1 "pi1 pi2 pi3 pi4 u2 sigma2 omega"
global pi1=0.45
global pi2=0.05
global pi3=0.05
global pi4=0.95
global u2=0.45
global sigma2=0.85
global omega=0.5
exit
}
u1=(1-$omega)*$u2/$omega
sigma1=((1-$u2^2-$sigma2^2)+$omega*($u2^2-$u1^2+$sigma2^2))/$omega)^0.5
replace
`1'=$omega*norm((x1*$pi1--u1)/sigma1)+(1-$omega)*norm((x1*$pi1-$u2)/$sigma2)
end
use rfdata
nl rfgmm y x1 x2 x3 x4
=====
Wei Tan
__________________________________________________
Do You Yahoo!?
Sign up for SBC Yahoo! Dial - First Month Free
http://sbc.yahoo.com
*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/