David Greenberg <dg4@nyu.edu> is having some trouble with the -ml- command:
> I am trying to learn the maximum-likelihood procedure in Stata SE version
> 8, but am getting error messages when following illustrative examples, one
> from someone's web site, the other from the Stata manual. Perhaps someone
> can tell me what I'm doing wrong.
> Here is the first example:
> use http://www.stata-press.com/data/r8/auto.dta
> program define mylogit
> args lnf Xb
> replace `lnf' = -ln(1+exp(-`Xb')) if $ML_y1==1
> replace `lnf' = -`Xb' -ln(1+exp(-`Xb')) if $ML_y==0
> end
> ml model lf mylogit (foreign=mpg weight)
> ml maximize
> At this point I get the message
> varlist required
> (r100);
> What do I need to do to fix the syntax?
I've run David's code verbatim on my home computer, and it worked fine.
I can only think of two things:
1. The definition for -mylogit- should have a version statement at the very
top.
program define mylogit
version 8.2
args lnf Xb
replace `lnf' = -ln(1+exp(-`Xb')) if $ML_y1==1
replace `lnf' = -`Xb' -ln(1+exp(-`Xb')) if $ML_y==0
end
2. David's Stata might not be up-to-date. Look at the results of the
following command within Stata:
. update query
--Jeff
jpitblado@stata.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/