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: RE: Foreach loop for subsequent variables


From   Nick Cox <[email protected]>
To   "'[email protected]'" <[email protected]>
Subject   RE: st: RE: Foreach loop for subsequent variables
Date   Tue, 1 Nov 2011 15:54:29 +0000

I can't see your code from here. I guess you are confusing i (letter i) with 1 (number 1). If that is not the answer, you need to show us your code. 

Nick 
[email protected] 

Dmitriy Glumov

Thank you for your response. When I run forval as you suggested, I get
the error message (r 198) saying that "1" is an invalid name (I
believe this message refers to the very first 1 in the program). I am
not exactly sure why this message appears (if it helps, I work with
Stata 11), as other online examples that use the same context appear
to work. Again, thank you for your help and it would be greatly
appreciated if you or anyone else can help with this error.

On Tue, Nov 1, 2011 at 10:56 AM, Nick Cox <[email protected]> wrote:

> Let's suppose your variables run var1 ... var42 so that the last pair is var41-var42.
>
> Then first I would use -forvalues- here. It is easier and a smidgen faster.
>
> forval i = 1(2)41 {
>
>        local j = `i' + 1
>        <whatever> var`i' var`j'
>
> }
>
> You can also go
>
> forval i = 1(2)41 {
>
>        <whatever> var`i' var`=`i'+1'
>
> }
>
> See [U] 18.3.8 and -help macro-.
>
> Nick
> [email protected]
>
> Dmitriy Glumov
>
> I have recently begun to use Stata and have run into the problem
> writing a foreach loop. I have a large dataset of variables, paired in
> a way that var1 and var2 are together, var3 and var4 are together, and
> so on. I am writing a foreach loop for each individual odd variable
> and, everytime the program loops, I need to include a subsequent even
> variable as well. So, for example, given that var1 is `x', I need to
> include var2 into the program, too (in essence, `x' + 1). The problem
> doesn't seem to be very difficult, and I am sure there is a simple
> solution to it, but I just can't find it anywhere. Thank you for your
> consideration, any help would be greatly appreciated!

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