全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
35545 13
2015-02-04
我现在有很多人的年龄数据,年龄在20到80岁之间,现在想将年龄以十岁为一个年龄段进行统计,20-30岁有多少人,31-40岁有多少人,等等,后续只需要用tab命令即可,但分段不会弄,之前自己想了一个笨办法,20-30岁用数字1表示,以此类推,用replace var1=1 if var1==20,replace var1=1 if var1==21,这样一个命令一个命令的替换,请问下有没有更便捷的办法,将所有的年龄数据快速分段,谢谢了。
二维码

扫码加我 拉你入群

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

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

全部回复
2015-2-4 22:11:57
试试autocode命令吧

gen agenew=autocode(age,6,20,80)

其中6是要生成的组别数,而函数autocode则是指自动分成6组且各组间隔相等。
二维码

扫码加我 拉你入群

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

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

2015-2-4 22:30:36
SpencerMeng 发表于 2015-2-4 22:11
试试autocode命令吧

gen agenew=autocode(age,6,20,80)
非常感谢你!试了一下很方便!
麻烦再请教下,如果不是平均分段,比如20-35岁,36-40岁,这种,怎么处理?
二维码

扫码加我 拉你入群

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

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

2015-2-5 09:32:52
gen age_n  = inrange(age, 30,40)
二维码

扫码加我 拉你入群

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

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

2015-2-5 12:01:18
625928915 发表于 2015-2-5 09:32
gen age_n  = inrange(age, 30,40)
抱歉,我试了很多次都没成功,能不能麻烦解释下这个命令,谢谢了。
二维码

扫码加我 拉你入群

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

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

2015-2-5 12:01:25
625928915 发表于 2015-2-5 09:32
gen age_n  = inrange(age, 30,40)
抱歉,我试了很多次都没成功,能不能麻烦解释下这个命令,谢谢了。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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