楼主: chaoren2010
20717 9

使用SAS计算年龄的问题 [推广有奖]

  • 0关注
  • 0粉丝

已卖:1份资源

博士生

66%

还不是VIP/贵宾

-

威望
0
论坛币
490 个
通用积分
8.4969
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
3168 点
帖子
431
精华
0
在线时间
163 小时
注册时间
2011-4-10
最后登录
2025-5-19

楼主
chaoren2010 发表于 2013-3-6 17:39:59 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
现在有两个变量,一个是出生日期b(yyyy/mm/dd),另一个是当前日期d(yyyy/mm/dd),请问在用SAS计算年龄age时,age=(d-b)/x,这里的x应该取多少呢,直接取365,还是考虑一年又366天的情况,取(365*3+366)/4=365.25呢?或者还可以取另外的值呢?
二维码

扫码加我 拉你入群

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

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

关键词:出生日期 Age 出生日期

沙发
Eternal0601 发表于 2013-3-6 18:01:55
貌似365.25用的更多一些

藤椅
ziyenano 发表于 2013-3-6 18:33:34
data ex;
a='01jan00'd;
b=date();
c=intck('year',a,b);
format a b yymmdds10.;
put a b c;
run;

板凳
Aharach 发表于 2013-3-7 09:56:45
  1. age = floor((intck('month',birth,somedate) - (day(somedate) < day(birth))) / 12);
复制代码

报纸
soporaeternus 发表于 2013-3-7 11:31:00
intck吧
Let them be hard, but never unjust

地板
lovedieer 发表于 2013-3-8 02:02:57
Aharach 发表于 2013-3-7 09:56
I use this one too.  

7
bobguy 发表于 2013-3-8 07:58:51
If you want, you can define it as ages + some-days. It is not a true or false problem rather a conventional usage.

8
henryyhl 发表于 2013-3-8 09:03:24
age=yrdif(startdate, enddate,'actual');
或者用日期之差除以365.25都行。SAS 好像会自己调整。
但是下面这个帖子中说yrdif不行。https://bbs.pinggu.org/thread-865210-1-1.html 求解啊
It's not going to be easy, but it is going to be worth it.

9
a6566792 在职认证  发表于 2013-3-8 09:46:41
在不知道要求的情况下感觉还是问清楚项目要求或公司的规定再做,不然弄错了还要重新改,

10
chaoren2010 发表于 2013-3-8 10:38:43
ziyenano 发表于 2013-3-6 18:33
data ex;
a='01jan00'd;
b=date();
请问您使用intck计算年龄,结果只能精确到个位数么?是否可以使计算结果保留小数位呢?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-7 17:12