如何根据字符串变量的一部分对变量进行排序?

时间:2016-07-14 00:52:59

标签: stata

我有一个包含字符串变量的数据集,我正在尝试根据前两个字符生成一个新的二进制变量。所有字符串都是5个字符长,但我只关心前两个字符串才能排序。

例如,我可以有22001和22005.由于两者都是22XXX形式,我想在变量type_A中为两者赋值1。如果我有25001和25005,因为两者都不是22XXX的形式,我想在变量type_A中为两者分配值0。

1 个答案:

答案 0 :(得分:1)

这应该做的工作:

clear
set obs 4

generate str5 var1 = "22001" in 1
replace var1 = "22005" in 2
replace var1 = "25001" in 3
replace var1 = "25005" in 4

gen type_A = substr(var1, 1, 2) == "22"

请注意,当您解释问题时,您似乎将22005存储为文本 - 这可能不一定是最好的主意。