Replace ln(`1') by ln(`y')
Jean-Benoit
Katsuhide Isa a �crit :
Dear Statalisters,
I wrote the following simple ado file.
/*----------myboxcox.ado----------*/
program define myboxcox
version 7
local y = exp(`1')
if `y' == 1 {
  di in gr "f = " 1
  }
else {
  local f = (`y' - 1)/ln(`1')
  di in gr "f = " "`f'"
  }
end
/*----------myboxcox.ado----------*/
It works well all in all. But it sometimes shows an odd 
behavior. 
More specifically, when typed - myboxcox 1 - (namely, setting 
the argument as 1), the result is ". "(missing?), not 1.7182818 
(=(exp(1) - 1)/ln(exp(1))).
When directly typed in the command line as 
- di (exp(1) - 1)/ln(exp(1)) -, the result is 1.7182818, 
which is just as it should be.
I don't see why such a phenomenon occurs.
Any suggestions welcome.
Thanks in advance.
K.I.
*
*   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/
 
--
***************************************************************************
Jean-Benoit Hardouin
Biostatisticien
Observatoire R�gional de la Sant� du Centre
BP 2439
1, rue Porte Madeleine
45032 Orl�ans Cedex 1
t�l : 02 38 74 48 80
fax : 02 38 74 48 81
Email : [email protected]
**************************************************************************
*
*   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/