利用Stata中变量的名称

时间:2016-09-14 23:36:07

标签: string variables stata

我正在使用Stata,我有一组名为cal1cal2cal3的变量,依此类推,直到cal21。对于我的数据集的每一行,我可以将更多或更少的cal*变量视为非缺失(我使用reshape wide设计了数据集)。我想生成一个新变量,该变量返回可用于每行不可丢失的变量cal*的最大名称。例如,如果第1行直到cal3为非缺失,则此变量返回cal3;对于第2行,如果我有cal1cal2cal6,我想要cal6。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

使用长格式布局中的数据可以更容易地实现这一点,但是对于带有循环的宽数据也是如此:

gen max_cal = "none"
forvalues v=1/21 {
    replace max_cal = "cal`v'" if !missing(cal`v')
}

每当有max_cal变量没有丢失时,这将更新UITextField变量。