首页 > 解决方案 > 将 SAS 列转换为日期格式

问题描述

我在 best6 中有一列日期。格式例如 201301 是 2013 年 1 月,201402 是 2014 年 2 月。

是否可以将其转换为 date9. 格式?

我最终希望有一个只有年份的专栏,即 2013 年、2014 年、2015 年、2016 年等。

我的主表称为“file1”,带有日期的列称为“date1”,而我想要的仅包含年份的列称为“year1”。我努力了:

     data file1;
       year1= date1
       format year1 YEAR4.
     run;

但这并没有奏效。它给了我一个名为 year1 和 date1 的两个空白单元格的输出。

标签: datesas

解决方案


由于 date1 变量不是 SAS 日期,即您只有代表 2013 年 1 月的数值 201301,那么您应该能够使用一些数学函数,例如:

data want;
   set file1;
   year1 = int(date1/100);
run;

推荐阅读