|
|
板凳

楼主 |
发表于 2009-11-24 09:15:45
|
只看该作者
Re: 如何给全体数据集改名
下面的程序只是随手写的,请自己调试。
[code:3jbw77yw]
%macro a;
options nofmterr;
libname mylib '<文件夹>';
proc contents data=mylib._ALL_ out=a noprint;
run;
proc sql;
create table tabnam as
select distinct memname from a;
quit;
data tabnam;
set tabnam;
if substr(memname,1,5)='PPSY_' then do;
memname_new=substr(memname,6,length(strip(memname))-5);
output;
end;
run;
data _NULL_;
set tabnam end=final;
call symput('old'||trim(left(put(_N_,best.))),memname);
call symput('new'||trim(left(put(_N_,best.))),memname_new);
if final then call symput('tabno',trim(left(put(_N_,best.))));
run;
%do i=1 %to &tabno;
data &&new&i;
set &&old&i;
run;
%end;
%mend a;
%a
[/code:3jbw77yw] |
|