在Stata中,如何创建组,使每个组具有相同的另一个变量的总和?

在Stata中,如何创建组,使每个组具有相同的另一个变量的总和?,stata,Stata,我有一个面板数据集,希望从该数据创建组 egen AUX = cut(variable), group(5) 这将创建每个组中单元数(几乎)相同的组。我现在想要的是,在每个组中,另一个变量的总数是相同的。例如,我希望对家庭进行分组,使每个bin具有相同的总收入 如何设置这样的命令?这里没有数据示例,也不清楚面板结构是如何进入的。例如,您是希望将所有年份的住户集合在一起(?),还是单独计算年份 无论哪种方法,技术都是根据累积总和的分数进行分割。一个细节是相同的值应该分配给相同的箱子 sysu

我有一个面板数据集,希望从该数据创建组

egen AUX = cut(variable), group(5)  
这将创建每个组中单元数(几乎)相同的组。我现在想要的是,在每个组中,另一个变量的总数是相同的。例如,我希望对家庭进行分组,使每个bin具有相同的总收入


如何设置这样的命令?

这里没有数据示例,也不清楚面板结构是如何进入的。例如,您是希望将所有年份的住户集合在一起(?),还是单独计算年份

无论哪种方法,技术都是根据累积总和的分数进行分割。一个细节是相同的值应该分配给相同的箱子

sysuse auto, clear
bysort foreign (price) : gen runningsum = sum(price)

* same values belong together 
bysort foreign price (runningsum) : replace runningsum = runningsum[_N] 
by foreign : gen quintile = ceil(5 * runningsum/runningsum[_N])
bysort foreign quintile : egen qtotal = total(price)
list  price qtotal quintile if foreign, sepby(quintile)


     +----------------------------+
     |  price   qtotal   quintile |
     |----------------------------|
 53. |  3,748    24231          1 |
 54. |  3,798    24231          1 |
 55. |  3,895    24231          1 |
 56. |  3,995    24231          1 |
 57. |  4,296    24231          1 |
 58. |  4,499    24231          1 |
     |----------------------------|
 59. |  4,589    31280          2 |
 60. |  4,697    31280          2 |
 61. |  5,079    31280          2 |
 62. |  5,397    31280          2 |
 63. |  5,719    31280          2 |
 64. |  5,799    31280          2 |
     |----------------------------|
 65. |  5,899    25273          3 |
 66. |  6,229    25273          3 |
 67. |  6,295    25273          3 |
 68. |  6,850    25273          3 |
     |----------------------------|
 69. |  7,140    24959          4 |
 70. |  8,129    24959          4 |
 71. |  9,690    24959          4 |
     |----------------------------|
 72. |  9,735    34720          5 |
 73. | 11,995    34720          5 |
 74. | 12,990    34720          5 |
     +----------------------------+

谢谢,这就是我要找的。