创建新的开始日期变量,它是多列中最早的日期

时间:2013-09-04 18:02:00

标签: sas

我想比较三列并创建一个新变量start,它保留了记录的最早日期。我希望能有更高效的东西,因为这台电脑正在挣扎。

data new1;
set new;
format start date MMDDYY10;
if input(service_start, MMDDYY10) < input(Pay_start,MMDDYY10) and input(service_start, MMDDYY10) < input(cost_start,MMDDYY10) then start = service_start;
Else if input(Pay_start,MMDDYY10) < input(service_start, MMDDYY10) and input(Pay_start,MMDDYY10) < input(cost_start,MMDDYY10) then start = pay_start;
Else start = cost_start;
run;

1 个答案:

答案 0 :(得分:4)

data new1;
    set new;
    format start date MMDDYY10.;
    start = min( input( service_start, MMDDYY10. ), input( Pay_start, MMDDYY10. ), input( cost_start, MMDDYY10. );
run;