我试图从 SAS 中的日期中提取一个月,但到目前为止,我所有的新月份变量都缺失。
我尝试在 SAS 中使用 Month() 函数的一些组合,但到目前为止它只是缺失。日期格式如下:01/31/2017 (MMDDYY10.)
我努力了
month = month(end_date)
Month =catx('/',put(month(end_date),z2
Run Code Online (Sandbox Code Playgroud)
我希望月份显示为数字 (01) 或 3 个字母代码 (JAN),目前它只是缺少 (.)
提前致谢!
要month()返回缺失值,end_date变量必须是数字且缺失。如果 end_date 是字符变量,则日志将显示invalid numeric data。
使用该monname3.格式将日期值转换为 $3。字符值mon
monthname = put (end_date, monname3.);
Run Code Online (Sandbox Code Playgroud)
其他替代方案是:
例如:
end_date_copy = end_date;
format end_date_copy monname3.;
end_date_month = intnx('month', end_date, 0);
format end_date_month monname3.;
Run Code Online (Sandbox Code Playgroud)
您最终做什么取决于下游在报告或聚合中如何使用mon 。