怎样将sas数据集按行拆分,并输出到txt文档里
1个回答
展开全部
/*将一个数据集中的每一个观测单独生成一个txt文件*/
/*dataset:逻辑库名.数据集名,例如work.a ,outpath:输出路径,例如C:\Users\Administrator\Desktop,不要加引号 */
%macro export(dataset,outpath);
/*获取观测总数*/
data _null_;
set &dataset nobs=nobs;
call symputx('nobs',nobs);
run;
/*拆分*/
%do i=1 %to &nobs;
data &dataset&i;
set &dataset;
if _n_=&i;
run;
%put &dataset.&i;
/*生成txt文件*/
proc export data=&dataset&i outfile="&outpath.\obs_&i..txt" dbms=TAB REPLACE;
run;
/*删除产生的子数据集*/
proc delete data=&dataset&i;run;
%end;
%mend export;
%export(dataset,outpath);
/*dataset:逻辑库名.数据集名,例如work.a ,outpath:输出路径,例如C:\Users\Administrator\Desktop,不要加引号 */
%macro export(dataset,outpath);
/*获取观测总数*/
data _null_;
set &dataset nobs=nobs;
call symputx('nobs',nobs);
run;
/*拆分*/
%do i=1 %to &nobs;
data &dataset&i;
set &dataset;
if _n_=&i;
run;
%put &dataset.&i;
/*生成txt文件*/
proc export data=&dataset&i outfile="&outpath.\obs_&i..txt" dbms=TAB REPLACE;
run;
/*删除产生的子数据集*/
proc delete data=&dataset&i;run;
%end;
%mend export;
%export(dataset,outpath);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |