全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
14047 13
2010-01-10
样本的出生年月日数据例示如下:

变量名为birth,具体数值为
05 May 29
24 Nov 41
02 Aug 58
29 Apr 63
02 Sep 76
01 Mar 60
18 Nov 68
01 Aug 69
05 Sep 73
22 Feb 74
(等等)

变量“birth”的Format标识为“%dD_m_Y”,请问如何计算每个人的年龄呢?

小女子新手上路,恳请各位不吝相助,谢谢!~
二维码

扫码加我 拉你入群

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

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

全部回复
2010-1-10 11:20:36
计算截止当前日期的年龄:

clear all
input str2 day str3 month str2 year
05 May 29
24 Nov 41
02 Aug 58
29 Apr 63
02 Sep 76
01 Mar 60
18 Nov 68
01 Aug 69
05 Sep 73
22 Feb 74
end
replace year="19"+year
tempvar d b
gen `d'=day+month+year
gen `b'=date(`d',"DMY")
gen age=(date(c(current_date),"DMY")-`b')/365.25
二维码

扫码加我 拉你入群

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

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

2010-1-10 16:23:12
cherrypie 发表于 2010-1-10 03:03 变量birth的Format标识为"%dD_m_Y",请问如何计算每个人的年龄呢?
eblog 发表于 2010-1-10 11:20 gen age=(date(c(current_date),"DMY")-`b')/365.25
这种情况下,直接使用g age=(date(c(current_date),"DMY")-birth)/365.25即可。
二维码

扫码加我 拉你入群

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

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

2010-1-10 16:42:19
sungmoo 发表于 2010-1-10 16:23
cherrypie 发表于 2010-1-10 03:03 变量birth的Format标识为"%dD_m_Y",请问如何计算每个人的年龄呢?
eblog 发表于 2010-1-10 11:20 gen age=(date(c(current_date),"DMY")-`b')/365.25
这种情况下,直接使用g age=(date(c(current_date),"DMY")-birth)/365.25即可。
没有这一句代码是不行的“replace year="19"+year
二维码

扫码加我 拉你入群

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

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

2010-1-10 16:47:30
eblog 发表于 2010-1-10 16:42 没有这一句代码是不行的“replace year="19"+year
楼主的birth的数据格式已经是%dD_m_Y了吧?
二维码

扫码加我 拉你入群

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

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

2010-1-10 16:53:24
sungmoo 发表于 2010-1-10 16:47
eblog 发表于 2010-1-10 16:42 没有这一句代码是不行的“replace year="19"+year
楼主的birth的数据格式已经是%dD_m_Y了吧?
嗯,如果数据设置正确是可以的
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…

分享

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