如何将日期字段转换为2018/01格式

时间:2018-05-29 09:10:18

标签: date sas format base

我的表格中有一个日期字段为char "01jan2017"

我想将日期字段转换为此格式 "2018 / 01" ,正斜杠之间应该有空格。

由于

2 个答案:

答案 0 :(得分:1)

如果您要查找的内容仅用于显示,则此处为字符转换

data r;
  date = '01jan2017'd;
  date1 = compbl(put(year(date),best.)|| " / "||put(month(date),z2.));
run;

答案 1 :(得分:1)

您需要执行三个关键步骤:

catx(' / ',year(input(date_char,date9.)),put(month(input(date_char,date9.)),z2.));
  1. 将日期转换为date9.格式以提取年份和月份,
  2. 使用月份的z2.格式获取前导零,
  3. 使用Catx()来整合年,月和日'/'。
  4. 完整代码:

    data want;
    date_char="01jan2017";
    dateYYMM=catx(' / ',year(input(date_char,date9.)),put(month(input(date_char,date9.)),z2.));
    run;
    

    输出:

     date_char=01jan2017 dateYYMM=2017 / 01