簡體   English   中英

日期之間的SAS輸出數據

[英]SAS Output Data between dates

我有一個包含有效和終止日期的客戶表。 我沒有創建一條記錄,而是嘗試創建一個表,該表在成員活躍的每個月每年和每月都有一條記錄。 有沒有一種簡單的方法可以在 SAS 中創建所需的表? 僅供參考,原始表將有幾千條記錄,大約有十幾個列,但現在想讓示例保持簡單。 此外,所需表中的記錄之間沒有線,只是為了便於參考而添加。 謝謝。

原始表和欲望表

在此處輸入圖片說明

原始表
名稱 Eff_date Term_Date
約翰 1/1/2020 3/31/2020
艾米 3/1/2019 3/10/2019

所需表
名稱 Eff_date Term_Date Eff_YM

約翰 1/1/2020 3/31/2020 202001

約翰 1/1/2020 3/31/2020 202002

約翰 1/1/2020 3/31/2020 202003

艾米 3/1/2019 3/10/2019 201903

  • INTCK() 將找到兩個日期之間的月數

  • INTNX() 將日期增加指定的數量,即 1 個月,1 周

  • 一個顯式的 OUTPUT 語句將為每個月寫一個新行

     data have; informat name $8. date_start date_end mmddyy10.; format name $8. date_start date_end mmddyy10.; input Name date_start date_end; cards; John 1/1/2020 3/31/2020 Amy 3/1/2019 3/10/2019 ;;;; run; data want; set have; nMonths=intck('month', date_start, date_end, 'C'); do i=0 to nMonths; Effective_YM=intnx('month', date_start, i, 's'); format effective_YM yymmn6.; OUTPUT; end; drop nMonths; run;

暫無
暫無

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

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