今天工作时被老板要求把几十万的名单数据分割成多个txt,要求每个txt含有一千个名单,现共享程序如下步骤如下
1。产生a数据集,有10000个名单
2。产生b数据集,在a的基础上分割成十个组
3。利用宏程序将十个分组导出为十个txt的包
data a;
do i=1 to 10000;
output;
end;
run;
data b;
set a;
fenzu=ceil(i/1000);
run;
%macro shuchu;
%do n=1 %to 10;
data _null_;
set b(where=(fenzu=&n));
file "d:\&n..txt";
put i;
run;
%end;
%mend;
%shuchu;