全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1050 1
2013-07-05
原数据trdmnt=2004:05,日期,format trdmnt ddmmyy10.,之后就变成7214700

%macro xx;

%do i=1 % to 900957;

proc sql;

select sum(mretwd) into:mretwd1 from newlib.ret

where 'may2004'd<=trdmnt<='apr2005'd and stkcd=&i;

data newlib.ret;

set newlib.ret;

if _n_=&i and trdmnt='apr2005'd then ret=&mretwd1;

run;

%end;

%mend xx;

%xx;

run;

quit;


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-7-5 12:04:45
重新生成时间变量 trdmnt, 并修改条件语句

data ret_new (rename=(date=trdmnt));
    set ret;
     year=substr(trdmnt, 1, 4);
     month=substr(trdmnt, 6,2);
     date=mdy(month,01,year);
     format date yymmdd10.;
    drop trdmnt year month;
run;

where '01may2004'd<=trdmnt<='01apr2005'd and stkcd=&i;

if _n_=&i and trdmnt='01apr2005'd then ret=&mretwd1;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群