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 on April 23, and its replacement, is already up and running.

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

Re: st: Changing part of variable names

From   Nick Cox <>
Subject   Re: st: Changing part of variable names
Date   Tue, 24 May 2011 14:34:46 +0100

Thanks for the mention. Note that -renvars- is a joint production by
Jeroen Weesie
and myself.

However, in this case I don't see that you need anything other than -rename-.

Let's suppose that the files are called -file1- to -file11-.

forval i = 1/11 {
     use file`i'
    rename income?? income
    save, replace

For a more complicated set of filenames, use e.g. -fs- (SSC) followed by

foreach f in `r(files)' {
     use "`f'"


On Tue, May 24, 2011 at 2:16 PM, Maarten Buis <> wrote:
> On Tue, May 24, 2011 at 2:27 PM,  <> wrote:
>> I have the following problem: I have 11 separate Stata-files, each containing a cross-section for one specific year. The variables in each corss-section are the same, except for the names, which carry a year tag in the variable name, so there's e.g. income07 in the cross-section for 2007, and income08 in the one for 2008. Now, I want to transform these 11 files into one panel data set. Therefore, I need to rename the variables in each cross section (several hundreds per cross-section) such that they have the same name, i.e. income07 and income08 need to become incomeXX -otherwise "append" wouldn't work. How do I do this with a loop? Further complication: the year tag can be anywhere in the variable name, things like in07come, income07 or inco07me are possible.
> The easiest solution is probably to use Nick Cox's -renvars-. You can
> find it by typing in Stata -findit renvars-.

*   For searches and help try:

© Copyright 1996–2015 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index