Statalist


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

Re: Re: AW: st: How to use the marco names?


From   gjhxmu@sina.com
To   statalist<statalist@hsphsun2.harvard.edu>
Subject   Re: Re: AW: st: How to use the marco names?
Date   Thu, 06 Aug 2009 23:15:24 +0800

Nick, thank you for your help, which lets me understand more.

I suddenly think of  the following typing,

.local level  a b c

. di "`level'"
a b c

. di `"level"'
level

. di `level'
a not found
r(111);

If -di- is  to display literal strings or the contents of the names 
supplied, the results for the above three should be,

`level' // literal string

error // no local name "level",but local name level.

a b c  // the contents of the names.


Please forgive my  ignorance, thank you.

Best regards,

Rose.





----- Original Message -----
From: Nick Cox <n.j.cox@stata.com>
To: statalist@hsphsun2.harvard.edu
Subject: Re: AW: st: How to use the marco names?
Date: 2009-8-6 22:38:04

In addition to other advice, note that a major issue here is not macros, 
but the use of -display-.

-display- is quite happy to display several things one after another. It 
is also happy to display literal strings or the contents of the names 
supplied. The " " or `" "' are essential to disambiguate.

Thus for example

di "a b c"

is an instruction to display the literal string "a b c". -display- 
neither knows nor cares what that string means.

In contrast,

di a b c

is an instruction to display the contents of a, followed by the contents 
of b, followed by the contents of c. -display- now needs to work at 
finding out what a, b and c are.

Nick

Rose a.k.a. gjhxmu@sina.com wrote:

> Dear Martin,Dan and others,
> 
> I am completely confused by the use of local marco.
> 
> Take some examples,
> r(files) after -fs- 
> 
> r(names) after -est dir-
> 
> r(mean) after -su-
> 
> //maybe the three above are not local marco, but I need to use it in my following procedure.
> 
> r(levels) after -levelsof-
> // it seems different when the type of variable following -levelsof- is different.
> ........
> 
> How to display and use them in my follwing procedure?
> di `r(levels)'
> di `"`r(levels)'"'
> di `r(files)'
> di `"`r(files)'"'
> di `r(names)'
> di r(mean)
> 
> Something similar is,
> local x="1 2"
> local x "1 2"
> local x 1 2
> local x: r(mean)
> 
> Concretely, when to add single quote and double quote? when to use colon?
> especially,the difference among them.
> 

*
* 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/

*
*   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   |   What's new   |   Site index