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]

Re: st: RE: local variables and running do files


From   Abhimanyu Arora <abhimanyu.arora1987@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: RE: local variables and running do files
Date   Sat, 29 Oct 2011 14:15:47 +0200

Hi statalist
I guess Ana could make use of global macros for her problem (even as
if I recall there was an advice in statalist preferring `locals', but
I do not clearly recall the exact reason)
Cheers
Abhimanyu

On Sat, Oct 29, 2011 at 3:12 AM, Nick Cox <njcoxstata@gmail.com> wrote:
> It's the same question. The use of a local requires its prior
> definition in the same locale.
> "Locale", although a term used elsewhere in computing, is in this
> context my term earlier defined in the thread.
>
> Nick
>
> On Fri, Oct 28, 2011 at 7:40 PM, Maria Ana Vitorino
> <vitorino@wharton.upenn.edu> wrote:
>> I am using Stata 11.
>> But in any case what if I want to run some regressions, for example:
>>
>> reg y x1 x2 x3
>>
>> is equiv to
>>
>> --regtest.do
>> local x "x1 x2 x3"
>> reg y `x'
>> ----
>>
>>
>> but if after running the first 2 lines I want to run the command " sum `x' "
>>  it does not work. Is there anyway around this so that I don't have to
>> define the local macro again?
>>
>> Thanks,
>> Ana
>>
>>
>>
>> On Oct 28, 2011, at 2:30 PM, Nick Cox wrote:
>>
>>> The term "local variable" is to be avoided, as explained at
>>>
>>> http://www.stata.com/statalist/archive/2008-08/msg01258.html
>>>
>>> What you are seeing is a defining feature of a local macro: it is visible
>>> only locally, i.e. within the locale in which it is defined, i.e. not
>>> visible outside the interactive session, program, do file or do file editor
>>> contents within which it is defined.
>>>
>>> You need to pass the contents of your local macro to the do-file as an
>>> argument. If you write e.g.
>>>
>>> ------------ mydo.do
>>> su `1'
>>> ------------
>>>
>>> And then go
>>>
>>> mydo "var1 var2"
>>>
>>> then the do file uses the argument you feed to it. Arguments are separated
>>> by spaces and bound by " ". This is all explained in the chapter(s) on
>>> do-files in [U], which is part of your Stata, as without declaring otherwise
>>> it is assumed that you are using Stata 12.
>>>
>>> Nick
>>> n.j.cox@durham.ac.uk
>>>
>>> Maria Ana Vitorino
>>>
>>> I would like to run a do file in batches (i.e. a few lines at a time)
>>> but it seems that then the local variables that I defined in the
>>> beginning do not carry over ...
>>> Any solution for this?
>>>
>>> Here is some output for a simple example so that you can better
>>> understand what is my issue.
>>>
>>> Thanks!!
>>> Ana
>>>
>>>
>>> . do "/var/folders/Xn/Xnl4Mq-lGR4-mNII1zm-Wk+++TI/-Tmp-//SD17268.000000"
>>>
>>> . sum
>>>
>>>    Variable |       Obs        Mean    Std. Dev.       Min        Max
>>> -------------+--------------------------------------------------------
>>>        var1 |        24        12.5    7.071068          1         24
>>>        var2 |        24        36.5    7.071068         25         48
>>>        var3 |        24        61.5 7.071068         50         73
>>>
>>> . local var "var1 var2"
>>>
>>> .
>>> end of do-file
>>>
>>> . do "/var/folders/Xn/Xnl4Mq-lGR4-mNII1zm-Wk+++TI/-Tmp-//SD17268.000000"
>>>
>>> . sum `var'
>>>
>>>    Variable |       Obs        Mean    Std. Dev.       Min        Max
>>> -------------+--------------------------------------------------------
>>>        var1 |        24        12.5    7.071068          1         24
>>>        var2 |        24        36.5    7.071068         25         48
>>>        var3 |        24        61.5 7.071068         50         73
>>>
>>>
>>> *
>>> *   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/
>>
>
> *
> *   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   |   Site index