我有一個包含 2 個日期欄位(date1 和 date2)的資料集,我必須創建兩個新的日期欄位,其中 date3 將是 date1 中的最早日期,而 date4 將是 date2 31 天。它必須在 testid 上分組完成。我擁有的資料:
data have;
input acct_num test_id date1 date2 ;
DATALINES;
55203610 1 2-feb-20 15-Apr-20
55203610 1 15-feb-20 15-Apr-20
55203610 1 20-feb-20 15-Apr-20
55203610 2 1-Jan-20 20-May-20
55203610 2 15-Mar-18 20-May-20
55203610 3 1-feb-17 1-Jul-20
;
run;
data want;
input acct_num test_id date1 date2 date3 date4;
DATALINES;
55203610 1 2-feb-20 15-Apr-20 2-Feb-20 16-May-20
55203610 1 15-feb-20 15-Apr-20 2-Feb-20 16-May-20
55203610 1 20-feb-20 15-Apr-20 2-Feb-20 16-May-20
55203610 2 1-Jan-20 20-May-20 15-Mar-18 20-Jun-20
55203610 2 15-Mar-18 20-May-20 15-Mar-18 20-Jun-20
55203610 3 1-feb-17 1-Jul-20 1-feb-17 1-Aug-20
;
run;
任何幫助將不勝感激。
uj5u.com熱心網友回復:
使用DoW 回圈
data want;
do until (last.test_id);
set have;
by test_id;
minval=min(minval, date1);
end;
do until (last.test_id);
set have;
by test_id;
date3=minval;
date4=date2 31;
output;
end;
format date: date9.;
drop minval;
run;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/399473.html
上一篇:基于中斷值的SQL計數行
