Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.


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

Re: st: nlsuraids returned 199, please help


From   "Brian P. Poi" <[email protected]>
To   [email protected]
Subject   Re: st: nlsuraids returned 199, please help
Date   Sat, 07 May 2011 10:53:00 -0400


On 05/07/2011 06:14 AM, ABDULFATAH S, ADAM wrote:
Dear Brian,
Thank you very much for your help.
After correcting the errors you identified, I still have the same error.

capture program drop nlsuraids
quietly: program define nlsuraids
	version 10.0
	syntax varlist (min=24 max=24) if, at(name)
	tokenize `varlist'
	args w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 lnp1 lnp2 lnp3 ///
	lnp4 lnp5 lnp6 lnp7 lnp8 lnp9 lnp10 lnp11 lnp12 lnexp ///
	tempname a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12

You added a line-continuation mark where you didn't need one, after "lnexp". The last three lines should be

   args w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 lnp1 lnp2 lnp3 ///
        lnp4 lnp5 lnp6 lnp7 lnp8 lnp9 lnp10 lnp11 lnp12 lnexp
   tempname a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12

I believe there is some punctuation or misspecification somewhere
in the program, unfortunately I cant see where. It would also be nice
if you give me 'shortcut' tips on how to identify such errors easily
(if such tips are available) without going over the whole program every
time.

Before calling -nlsur-, type in

   . set trace on
   . set tracedepth 4

Then issue your -nlsur- command.

Scroll up a bit in the results window, and with your program (before including my latest fix) you'll see


- args w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 lnp1 lnp2 lnp3 lnp4 lnp5 lnp6 l > np7 lnp8 lnp9 lnp10 lnp11 lnp12 lnexp tempname a1 a2 a3 a4 a5 a6 a7 a8 a9 a10
>  a11 a12
      - scalar `a1'=`at'[1,1]
      = scalar =__000003[1,1]
------------------------------------------------------- end nlsuraids ---
    - }


The fact that the last command (-scalar-) didn't recognize `a1' and the fact that tempname occurred right after lnexp was enough to tell me where to look. Then I saw that you had an extra /// where it shouldn't have been.

Once your program is running, you can type

   . set trace off

to turn the debugging messages off.  See -help trace- for more information.

   -- Brian Poi
   -- [email protected]
*
*   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–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index