全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1653 2
2014-09-28
%macro time(year, month);

如果&month的值为3,那么生成一个新的month_1=12,并且新的year_1=&year-1;
否则的话,这个month_1=&month-3,并且year_1=&year。

data a_last;
set a;
where year(accper)=year_1 and month(accper)=month_1;
run;

%mend;

请问这个怎么办到呢?



二维码

扫码加我 拉你入群

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

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

全部回复
2014-9-28 14:40:12
有个函数叫intnx......
二维码

扫码加我 拉你入群

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

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

2014-9-28 20:04:36
最好用数据举个例子。否则看的不是太明白。我尝试写了一下,不知道是否你想要的

%macro time(year, month);

data a;
        set b
        if &month=3 then  do;
                        month_1=12;
                        year_1=&year-1;
                end;
                else do;
                        month_1=&month-3;
                        year_1=&year
                end;

data a_last;
set a;
where year(accper)=year_1 and month(accper)=month_1;
run;

%mend;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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