我有以下形式的数据集:
vars:
year, firm, executive
data:
2002, initech, steve
2002, microtech, john
2003, initech, mike
2003, microtech, john
我想添加一个新的变量“stickaround”,表明某位高管是否在明年仍与他的公司合作。对于我的数据,我希望创建的值为:
0
1
0 or missing (both fine)
0 or missing (both fine)
关于我最好怎么做的任何想法?
我正在考虑循环所有观察 - 但我如何检查下一年是否有同一位执行官的条目?
答案 0 :(得分:1)
尝试:
bysort firm (year): gen sticksaround = executive == executive[_n+1]
E.g :
clear
input year str15 firm str5 executive
2002 "initech" "steve"
2002 "microtech" "john"
2003 "initech" "mike"
2003 "microtech" "john"
end
bysort firm (year): gen sticksaround = executive == executive[_n+1]
li
或者,如果您需要比较(例如)2002年至2003年,而不 2002年至2004年如果缺少2003年,请使用tsset
并尝试(注意)您需要encode
firm
和executive
):
gen sticksaround = executive == F.executive
有关详细信息,请参阅help by
和help tsset
。