SAS中intck函数计算日期天数间隔等妙用

SAS中intck函数计算⽇期天数间隔等妙⽤
SAS中intck函数计算⽇期天数间隔等妙⽤
⼤家肯定知道⾃⼰⼏岁,度过了多少个季节。那多少⼈知道⾃⼰从出⽣到现在有多少个⽉,多少个周、多少天吗?
SAS可以帮你解决,⽤intck函数,将你的出⽣⽇期和今天的⽇期放在下列函数就OK!可以应⽤到客户的⼊⽹时长等计算中。
1.利⽤intck函数
data a;
format x date9. y date9.;
x='05DEC1985'd;y='18APR2017'd;
year=intck('year',x,y);
qtr=intck('qtr',x,y);
month=intck('month',x,y);
week=intck('week',x,y);
day=intck('day',x,y);
put year= qtr= month= week= day=;
run;
改进优化后:
data aaa;
input birthday mmddyy8.;
format birthday mmddyy8.;
bday=put(birthday,mmddyy8.);
today=put(today(),mmddyy8.);
age=intck('year',birthday,today());  /*会四舍五⼊年龄*/
age1 = floor
((intck('month',birthday,today())
- (day(today()) < day(birthday))) / 12);
cards;
01251956
09021968
02181948
10271999
;
run;
2.利⽤宏
%macro yourdays(birthday=);
data _null_;
file print;
y=today();
x=&birthday;
year=intck('year',x,y);
qtr=intck('qtr',x,y);
month=intck('month',x,y);
week=intck('week',x,y);
day=intck('day',x,y);
稀油站
put "你在这个世界上活了"year"年,"month"⽉," week"星期," day"天。";
run;
%mend;
%yourdays(birthday='08jun1988'd);
改进优化后:
%macro yourdays(birthday=);
ods listing close;
ods html;
data _null_;
file print;
time=time();
y=today();
x=&birthday;
year=Intck('year',x,y);酒店入口设计
煤炭港口qtr=Intck('qtr',x,y);
month=Intck('month',x,y);
week=Intck('week',x,y);
day=Intck('day',x,y);
索爱m600iput 100*'*';
put "现在是"y:yymmdd10."号" time:time5."分。";
形位公差
put;
put "截⽌到⽬前,你在这个世界上活了"year"年," month"个⽉," week"个星期," day"天。"; put;
put "请珍惜你⽣命中的每⼀天!";
put;
put 100*'*';
run;
ods html close;
jstorods listing;
%mend;
/*将以下⽇期改为你的⽣⽇,直接运⾏全部程序*/
%yourdays(birthday='08jun1988'd);

本文发布于:2024-09-20 20:50:34,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/505553.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   计算   天数
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议