【发布时间】:2018-07-04 16:07:13
【问题描述】:
我想创建一个排序组 ID,而不对组进行排序。
var1 是我感兴趣的变量,包含一些随机值。 id_1 是基于var1 的_n 的唯一ID。 group 包含有关各个 var1 观察所属组的信息。请注意,group 中的字符串不包含任何排序信息,这意味着按字母排序没有任何价值。
我想创建id_group,因为在下一步中,我想将var1 折叠为group,而不会丢失group 的排序。如果我只是collapse(max) var1, by(group),Stata 将按字母顺序按group 对结果进行排序——这是我不想要的。我想创建id_group 到然后collapse(max) var1, by(id_group) 并保持组的顺序。
我曾尝试使用bysort,但此命令按字母顺序对group 进行排序以创建新ID。 egen 也不起作用,因为创建的 ID 未按排序顺序。
clear
input var1 id_var1 str6 group id_group
3 1 "C" 1
1 2 "C" 1
9 3 "C" 1
5 4 "A" 2
3 5 "B" 3
0 6 "F" 4
9 7 "Z" 5
1 8 "Y" 6
3 9 "T" 7
2 10 "T" 7
end
【问题讨论】:
标签: string sorting stata collapse