[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]
[no subject]
1. [xb1(real 0)]
must be (real # ) unless the option is required (# is the default value)
2. syntax [varlist(default=none)]
default= specifies how the varlist is to be filled in when the
varlist is optional and the user does not specify it. The default is
to fill it in with all the variables. If default=none is specified, it
is left empty.
On Dec 14, 2007 9:58 AM, Feiveson, Alan H. (JSC-SK311)
<[email protected]> wrote:
> Hi - I have two questions regarding the syntax of the "syntax"
> statement:
>
> 1)
> I've been trying to write a program (effcon.ado) that starts with
>
> syntax [varlist] [if] [in] , confdir(string) level(real) [xb1(string)
> n1(string) ]
> tokenize `varlist'
> local nv: word count `varlist'
> di " nv = `nv'"
>
> For some reason, this will work only if the "xb1" option is a string,
> but not if I change it to real:
>
> a) output when xb1 is a string in the syntax statement:
> . discard
>
> . effcon x1,level(.95) confdir(L) xb1(xyz) n1(asd)
> nv = 1
> [it works, etc.]
>
> But if I change the "xb1" option to real, I get a syntax error:
>
> b) output when xb1 is real in the syntax statement:
> . set trace on
>
> . discard
>
> . effcon x1,level(.95) confdir(L) xb1(1.234) n1(asd)
> ------------------------------------------------------------------------
> -------------- begin effcon ---
> - version 9.0
> - syntax [varlist] [if] [in] , confdir(string) level(real) [xb1(real)
> n1(string) ]
> invalid syntax
> ------------------------------------------------------------------------
> ---------------- end effcon ---
> r(197);
>
> 2)
> My second question deals with the word count of `varlist'. I want to
> have the option of no variables in varlist. But if I don't list any in
> my calling statement, `'varlist' is treated as a list of all the
> variables in my dataset. I thought I could just count the elements in
> `'varlist' and then do something if that count is zero (i.e. if I don't
> enter any variables) - but the count comes out 12 (in this case) because
> I have 12 variables in my data set. Any other suggestions on how to test
> if I entered any variables in my calling statement?
>
> Thanks
>
> Al Feiveson
>
> 2) Example where I enter no variables but `varlist' contains all my
> variables:
> Contains data from temprat.dta
> obs: 100
> vars: 12 13 Dec 2007 08:05
> size: 5,200 (99.9% of memory free)
> ------------------------------------------------------------------------
> -------
> storage display value
> variable name type format label variable label
> ------------------------------------------------------------------------
> -------
> R float %9.0g
> C float %9.0g
> xb1 float %9.0g
> xb2 float %9.0g
> s float %9.0g
> rat float %9.0g
> rat10 float %9.0g
> a float %9.0g
> b float %9.0g
> n1 float %9.0g
> x1 float %9.0g
> x2 float %9.0g
> ------------------------------------------------------------------------
> -------
> . discard
>
> . set trace on
>
> . effcon ,level(.95) confdir(L)
> ------------------------------------------------------------------------
> -------------- begin effcon ---
> - version 9.0
> - syntax [varlist] [if] [in] , confdir(string) level(real) [xb1(string)
> n1(string) ]
> - tokenize `varlist'
> = tokenize R C xb1 xb2 s rat rat10 a b n1 x1 x2
> - local nv: word count `varlist'
> = local nv: word count R C xb1 xb2 s rat rat10 a b n1 x1 x2
> - di " nv = `nv'"
> = di " nv = 12"
> nv = 12
> [rest omitted]
>
> *
> * 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/
>
*
* 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/
© Copyright 1996–2024 StataCorp LLC | Terms of use | Privacy | Contact us | What's new | Site index |