可以先生成一个变量来计算在这一年内,这个行业销量的排序,然后对序数小于等于10的行业进行求和
gsort time -sell
by time: ge sell_order = _n
egen sum_sell = sum(sell) if sell_order <= 10, by(time)
第一行用gsort而不是sort,是因为要对sell进行倒序排列。这样所有年份前10行业对应的sum_sell就是这个年份前十行业的总销量。如果想把其他行业对应的sum_sell也补上,那么可以加上
sort time sum_sell
by time: carryforward sum_sell, replace