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]

From |
Nick Cox <njcoxstata@gmail.com> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: Batch renaming variables |

Date |
Thu, 18 Oct 2012 15:17:25 +0100 |

1. If you don't state your real problem at the outset, you run the risk of wasting everyone's time. 2. -renvars- is from the Stata Journal. Please read the FAQ to see why you are asked to explain this. 3. The new -rename- (Stata 12) is much more flexible than the old. 4. Try * copy built-in alphabet local alpha "`c(alpha)'" local i = 1 forval j = 917(5)1002 { local letter : word `i' of `alpha' * leading 0 needs to be inserted if < 1000 local suffix : di %04.0f `j' rename var`suffix' cost_`letter' local ++i } On Thu, Oct 18, 2012 at 3:03 PM, Wameq Raza <wameq.r@gmail.com> wrote: > Hi again David, > As I mentioned, I'm not sure I understand this syntax enough to be > able to manipulate it and was wondering if you could kindly help me a > little more. Here's my exact problem: > > The variables I have start from v0915 and continue to v1005 and I need > to rename every 5th variable in this list starting from v0917. The > variables to be renamed to are: cost_a, cost_b....cost_n. > > How would I modify the syntax you sent me for this scenario? > Best > Wameq > > On Thu, Oct 18, 2012 at 3:50 PM, David Kantor <kantor.d@att.net> wrote: >> At 09:36 AM 10/18/2012, Wameq Raza wrote: >>> >>> Hi everyone, >>> I'm having some trouble trying to figure out how to do batch renames. >>> To elaborate, suppose I have 10 variables: v1, v2....v10 and I want to >>> rename every second var (ie v2, v4, v6, v8 and v10) to cost_a, >>> cost_b....cost_e. Can anyone please help me figure this out? I've >>> tried looking into renvars, but can't seem to figure it out. >> >> >> If there are only five renames, I would just write them out. >> But if you want a programmatic solution (as maybe there are really many more >> renames)... >> (untested) >> >> local suffixes "a b c d e" >> >> forvalues jj = 1/5 { >> ren v`=`jj'*2' cost_`=word("`suffixes'", `jj')' >> } >> >> ---- >> Another way of getting the suffixes (a, b, c,...) is to use >> char(96+ `jj') >> but you need to be careful not to exceed jj=26. >> But that's true in any case. >> * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/faqs/resources/statalist-faq/ * http://www.ats.ucla.edu/stat/stata/

**References**:**st: Batch renaming variables***From:*Wameq Raza <wameq.r@gmail.com>

**Re: st: Batch renaming variables***From:*David Kantor <kantor.d@att.net>

**Re: st: Batch renaming variables***From:*Wameq Raza <wameq.r@gmail.com>

- Prev by Date:
**st: RE: Dropping Observations based on Observations Across Rows** - Next by Date:
**Re: Re: st: mlabel on marginsplot?** - Previous by thread:
**Re: st: Batch renaming variables** - Next by thread:
**Re: st: Batch renaming variables** - Index(es):