我正在使用Stata 14.我将美国州和相应地区视为整数。 我想创建一个表示每个观察区域的字符串变量。 目前我的代码是
gen div_name = "A"
replace div_name = "New England" if div_no == 1
replace div_name = "Middle Atlantic" if div_no == 2
.
.
replace div_name = "Pacific" if div_no == 9
..所以这是一个非常长的代码。
我想知道是否有更短的方法可以自动分配值,而不是手动硬编码。
答案 0 :(得分:0)
您可以使用label define
在一行中定义值标签,然后使用decode
创建字符串变量。有关这些命令,请参阅help
。
如果对应关系是在单独的数据集中定义的,则可以使用merge
。参见例如this FAQ
除了在某个时刻键入所有名称或利用其他人先前将其键入文件的事实之外,这里不能有一个捷径。
有九个左右的标签,自己打字是最快的。
请注意,您输入的语句超出了您的需要,甚至可以做很长的事情,因为您可以开始
gen div_name = "New England" if div_no == 1