全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
7908 13
2010-01-10
在变量income下有几千条数据,每一收入数据出现的频数不一定为1,比如
income
800
800
960
980
1020
1020
1020
2000
2400
2400
......
2400
2700
2800
3000
3000
......
如果想对收入按照从低到高排列分为5组,但不想通过频数来分(我的意思是想把每一收入出现的次数视为1),请问如何操作,如何才能找出排在20%、40%、60%、80%的收入数值?

ps:我之前试过用group(5)处理,但由于有些收入数值对应的样本很多,因此出现了同一收入出现在不同的组的情况,这就不是我想要的结果。。。

请大虾们赐教啊!~~谢谢~~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2010-1-11 08:59:40
cherrypie 发表于 2010-1-10 23:25

如果想对收入按照从低到高排列分为5组,但不想通过频数来分(我的意思是想把每一收入出现的次数视为1),请问如何操作,如何才能找出排在20%、40%、60%、80%的收入数值?

ps:我之前试过用group(5)处理,但由于有些收入数值对应的样本很多,因此出现了同一收入出现在不同的组的情况,这就不是我想要的结果。。。

请大虾们赐教啊!~~谢谢~~
sort income
bys income: gen id=_n
keep if id==1
gen group=group(5)
_pctile income, p(20,40,60,80)
return list
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-1-11 10:09:36
明白啦~这种方法就是将所有不同的收入数值抽出来进行排列然后计算百分位数吧,我已经试过了,确实很好,感谢啊!

有个小疑问,以前我曾试着拿一组数(有些数值多次出现)直接计算其p20、p40,但没有成功,p25、p50、p75倒是可以直接计算出,请问是不是因为排列中的某些数值其频数不唯一的缘故呢?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-1-11 22:31:32
cherrypie 发表于 2010-1-10 23:25 如果想对收入按照从低到高排列分为5组,但不想通过频数来分(我的意思是想把每一收入出现的次数视为1),请问如何操作,如何才能找出排在20%、40%、60%、80%的收入数值?ps:我之前试过用group(5)处理,但由于有些收入数值对应的样本很多,因此出现了同一收入出现在不同的组的情况,这就不是我想要的结果。。。
cumul income, g(s) eq

*你看s最接近0.2、0.4、0.6、0.8的观测值。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-1-12 12:08:05
sungmoo 发表于 2010-1-11 22:31
cumul income, g(s) eq

*你看s最接近0.2、0.4、0.6、0.8的观测值。
找到以后用怎么把数据分成五组呢? 用什么命令?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-1-12 12:36:00
xtile dincome=income, nq(5)
应该就可以解决你的问题
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群