Stata:通过移动后缀重命名变量

时间:2013-08-05 14:13:40

标签: variables rename stata

我需要将变量var1重命名为var60var2var61(即为每个变量的后缀执行+1,以便{{1} }变为var2var3变为var3 ......依此类推。)

我尝试了几件事(var4renvars),但我没有成功,我不擅长用rename进行循环...

2 个答案:

答案 0 :(得分:2)

这是一个两步法

forvalues i =1/60{
rename var`i' var`=`i'+10'
}

forvalues i =11/70{
rename var`i' var`=`i'-9'
}

自动数据示例:

sysuse auto 
rename make var1
rename price var2
rename mpg var3
forvalues i =1/3{
    rename var`i' var`=`i'+10'
    }

forvalues i =11/13{
    rename var`i' var`=`i'-9'
    }

答案 1 :(得分:2)

也可以倒退:

 forval i = 60(-1)1 { 
     local j = `i' + 1 
     rename var`i' var`j' 
 } 

这取代了@Metrics建议的两个循环。那些由代码行数的倒数支付的代价将会改为

 forval i = 60(-1)1 { 
     rename var`i' var`=`i' + 1' 
 }