在SAS中将数字转换为日期格式

时间:2018-10-02 17:45:00

标签: sas

我有什么

我有一个名为 Release_Date 的列/变量,其长度为8格式11。和信息11。

该列中的观测值的格式为 YYYYMMDD ,SAS实际上将其读取为纯数字

我想要的

我想将这些观测值转换为DD / MM / YYYY格式,并将格式和格式转换为DDMMYY10。

示例

Release_Date是 20180612 ,然后我要 2018年12月6日

在这方面的任何帮助将不胜感激

2 个答案:

答案 0 :(得分:2)

  • 转换为字符
  • 读回日期
  • 确保变量不同,因为SAS不允许您更改变量类型

    releaseDate_NUM = input(put(Release_Date, 8. -l), yymmdd10.);
    

答案 1 :(得分:0)

以下解决方案创建一个简单的数据集,然后处理该数据集以添加转换后的日期:

data myDates;
input intDate;
datalines;
20110101
20120202
;run;

data myDates;
set myDates;
format cvtDate mmddyy10.;    * create new variable by specifying the format;
cvtDate = input(put(intDate,8.),yymmdd8.);      * assign new variable value;
run;

结果应为:

intDate   cvtDate
--------  ----------
20110101  01/01/2011
20120202  02/02/2012