求解答:有一组每月数据,需要对原数据集进行加工,为了方便,希望利用时间月进行循环解决,自编程序如下: %macro create_account_sheet(startmonth,endmonth); %LET I=0; %LET MONTH_ID=%SYSFUNC(PUT(%SYSFUNC(INTNX("MONTH","&STARTMONTH."D,&I.,"END")),DATE9.)); %DO WHILE ("&MONTH_ID."D<="&ENDMONTH."D); DATA ACCOUNT_SHEET&MONTH_ID.; SET HK.LON_D00P&MONTH_ID.; FORMAT LOAN_NO $17. LOAN_BALANCE BEST12. FIRST_LOAN_DATE DATE9. DAY_ID DATE9.; LOAN_NO=_COL0; LOAN_BALANCE=_COL3; FIRST_LOAN_DATE=MDY(SUBSTR(_COL6,5,2),SUBSTR(_COL6,7,2),SUBSTR(_COL,1,4)); DAY_ID=&MONTH_ID; RUN; %LET I=%EVAL(&I.+1); %month_id=%SYSFUNC(PUT(%SYSFUNC(INTNX("MONTH","&STARTMONTH."D,&I.,"END")),DATE9.)); %end; %mend; %create_account_sheet(mdy(1,30,2016),mdy(6,30,2016)); 日志提示intnx函数第二个参数不是数值,而且提示出现work.data01到work.data340等很多不应该出现的数据集。 求指导原因。 |



雷达卡



京公网安备 11010802022788号







