标题: 问大家一个小问题 [打印本页] 作者: shiyiming 时间: 2010-7-2 12:17 标题: 问大家一个小问题 想问问大家一个问题 .thanks
如果我有三数值, 2010,2011,2012
我想要增加2013到2022,我可怎么做?
data;
input a;
cards;
2010
2011
2012
run;
我想以以上的作基础,然后使用_last_+1 (大概) 的方式表示。作者: shiyiming 时间: 2010-7-2 19:51 标题: Re: 问大家一个小问题 data YourDataSet;
input a;
cards;
2010
2011
2012
;
run;
%macro crackman(NewDataSetName,MaxValue);
options spool;
data _null_;
set YourDataSet;
if _n_=1;
call symput("n",a);
run;
data &NewDataSetName.;
do a=&n. to &MaxValue.;
output;
end;
run ;
%mend crackman;
%crackman(crackman,2022);
可能太复杂点了作者: shiyiming 时间: 2010-7-5 16:44 标题: Re: 问大家一个小问题 data b(drop=i);
if _n_<4 then do;
set a;
output;
end;
else do i=1 to 5;
a=a+1;
output;
end;
run;