如何编写最佳的数据聚合代码?

Bur*_*ras 1 stata

我有以下数据集(个人级别数据):

pid  year state income
1    2000  il    100
2    2000  ms    200
3    2000  al     30
4    2000  dc    400
5    2000  ri    205
1    2001  il    120
2    2001  ms    230
3    2001  al     50
4    2001  dc    400
5    2001  ri    235
.........etc.......
Run Code Online (Sandbox Code Playgroud)

我需要估算每个州每年的平均收入,and创建一个如下所示的新数据集:

state   year   average_income
ar      2000      150
ar      2001      200
ar      2002      250
il      2000      150
il      2001      160
il      2002      160
...........etc...............
Run Code Online (Sandbox Code Playgroud)

我已经有一个运行完全正常的代码(我有两个循环).但是,我想知道有没有更好的方式在Stata中像sql样式查询?

Nic*_*Cox 12

这是比目前为止建议的更短的代码:

  collapse average_income=income, by(state year) 
Run Code Online (Sandbox Code Playgroud)