如何在SAS中将格式为“ 2017-03-24”的日期更改为正确的日期格式?

时间:2019-09-25 18:01:25

标签: sas

我需要将当前的格式更改为date9格式。

input Company_Name$ 1-58 Form_Type$ 59-70 CIK Date_filed$ 86-96 File_Name$ 118-141;
length Date_filed $10.;
format Date_filed yymmdd10.;
ndate=put(Date_filed, yymmdd10.);

这是我所拥有的,但不起作用。我不确定该怎么做。

1 个答案:

答案 0 :(得分:0)

SAS将数字日期中的日期存储为自1960年以来的天数。一旦有了有效的日期值,您就可以附加许多可以更改值显示方式的格式。使用适合该值的INFORMAT直接从源文件中将其读取为日期值。请注意,您不能将输入格式与输入语句中的列范围结合使用。相反,您可以使用@放置在日期字符串的第一列,然后使用格式化的输入。同样,您也没有告诉INPUT变量CIK读取哪些列。

input Company_Name $ 1-58 Form_Type $ 59-70
      CIK 71-85 @86 Date_filed yymmdd10. 
      File_Name $ 118-141
;
format Date_filed date9.;

请注意,您之前阅读了11列,但是YYYY-MM-DD样式的日期字符串仅需要10列,因此请检查您的日期字符串是否在86-95列或87-96列中。如果您没有阅读正确的列,则可能会错过月份中的第二位数字或年份的第一位数字。