全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
6174 2
2014-06-03
我们知道时间变量本质就是一个数字型变量。可我%put一个宏变量的时候,我要显示成时间格式,而不是数字形式,请问应该怎样呢?如:

%let date=15340;  /*15340对应的日期是2001-12-31*/

%put ***The date is &date ***;

结果:
***The date is 15340 ***

如何让结果是:
***The date is 2001-12-31 ***
二维码

扫码加我 拉你入群

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

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

全部回复
2014-6-3 01:39:11
解决了!!!

Using a SAS date constant along with the %SYSFUNC and PUTN functions, you can format a macro variable with any valid SAS date format, for example:
%let day='15feb2010'd;
%put %sysfunc(putn(&day,mmddyy.));
Results in:
2/15/10
Similarly, a datetime constant can be represented with a valid SAS datetime format, for example:
%let day='15feb2010:01:03:00'dt;
%put %sysfunc(putn(&day,datetime.));
Results in:
15FEB10:01:03:00

Source: http://support.sas.com/kb/38/646.html
二维码

扫码加我 拉你入群

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

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

2014-6-3 05:04:27
复制代码
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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