Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down at the end of May, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[no subject]



The difference is that your program -toto- calls -titi-, which is in the same file as -toto-,  

whereas you want -ml- to call -myprobit-, which is not in the same file as -ml-. 

You do not want -Example- to call -myprobit-. 

-ml- does not know that it should look inside -Example-, which it was what you were asking. 

Nick 
n.j.cox@durham.ac.uk

-----Message d'origine-----
De : Valerie Orozco 
Envoyé : lundi 12 juillet 2010 14:56
À : 'statalist@hsphsun2.harvard.edu'
Objet : RE: st : Calling a ML program in an ado file

Thank you Nick. It works!
But what's the difference between  a standard ado file?
For example, the following ado file is composed by 2 ado and it works (titi is known when called.)

/*----------------------------- begin toto.ado-----------------------------*/    
program toto
    version 11.1 
    
    di in red "toto is running"
    titi
      
end


program titi   
    version 11.1
    di "titi is in toto.ado"
end

exit
/*----------------------------- end toto.ado-----------------------------*/      

Thank you.

valérie

From
  "Nick Cox" <n.j.cox@durham.ac.uk>
To
  <statalist@hsphsun2.harvard.edu>
Subject
  st: RE: Calling a ML program in an ado file
Date
  Mon, 12 Jul 2010 11:41:39 +0100
________________________________________
Try putting your -myprobit- program in a separate file -myprobit.ado-. 

Nick 
n.j.cox@durham.ac.uk 

-----Message d'origine-----
De : Valerie Orozco 
Envoyé : lundi 12 juillet 2010 12:30
À : 'statalist@hsphsun2.harvard.edu'
Objet : Calling a ML program in an ado file

Hi,

I would like to create some ado-files in order to replicate some estimations on several data.
I have some problems calling ml program in my ado (they are not known).

Let's take a small example : 

/*----------------------------- begin Example.ado-----------------------------*/
program Example
    version 11.1
    args varY X1 X2
    use http://www.stata-press.com/data/r11/auto
    
    di "Call myprobit"
    ml model lf myprobit (`varY' = `X1'  `X2')
    ml maximize
end

program myprobit
    version 11
    args lnf theta1
    quietly replace `lnf' = ln(normal(`theta1')) if $ML_y1==1
    quietly replace `lnf' = ln(normal(-`theta1')) if $ML_y1==0
end
/*----------------------------- end Example.ado-----------------------------*/

Running the ado "Example" gives the following message : 


. Example foreign mpg weight
(1978 Automobile Data)
Call myprobit
unrecognized command:   myprobit
r(199);"

I don't understand why the program "myprobit", written in the ado file, remains unknown...
What is my mistake???
Thanks a lot.

valérie


-------------------------------
Valérie OROZCO
Toulouse School of Economics (INRA-GREMAQ)
21, allée de Brienne
F-31000 Toulouse, France

MA 101
+33 5 61 12 85 91
-------------------------------


*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index