簡體   English   中英

如何從SAS中的日期中提取月份

[英]How to extract month from a date in SAS

我試圖從 SAS 中的日期中提取一個月,但到目前為止,我所有的新月份變量都丟失了。

我曾嘗試在 SAS 中使用一些 month() 函數的組合,但到目前為止它只是丟失了。 日期格式如下:01/31/2017 (MMDDYY10.)

我試過了

month = month(end_date) 

Month =catx('/',put(month(end_date),z2

我希望月份顯示為數字 (01) 或 3 個字母的代碼 (JAN),目前只是缺少 (.)

提前致謝!

要使month()返回缺失值, end_date變量必須是數字且缺失。 如果 end_date 是一個字符變量,日志將顯示invalid numeric data

使用monname3. 格式將日期值轉換為 $3。 字符值mon

monthname = put (end_date, monname3.);

其他替代方案是:

  • 保持日期值不變並更改格式,或
  • 將日期值映射到月份值的第一個,並格式化

例如:

end_date_copy = end_date;
format end_date_copy monname3.;

end_date_month = intnx('month', end_date, 0);
format end_date_month monname3.;

你最終做什么取決於在報告或聚合的下游如何使用mon

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM