您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页Sas应用之数据输出excel(二)

Sas应用之数据输出excel(二)

来源:伴沃教育

在前面几篇中我们已经介绍过很多次sas数据输出到excel的方法了,包括分组输出、分sheet页输出;本次在这里再次提出输出到excel的方法,主要是考虑到一些别样的方法,令人耳目一新的思路。
一、程序思路首先,在data步中只读取到数据集的数据量信息,然后stop退出,这样处理效率非常高。其次,在分页输出时,预先规定每页好需要输出的数量,然后通过firstobs和obs控制每页输出量。
二、程序如下:
options mprint;
%macro out_put_xls(dset,fdir,num=65000);
data null;
set &dset.nobs=obs;
call symput("obs_cnt",obs);
stop;
run;
libname ex excel "&fdir.";
%do i=1%to &obs_cnt.%by &num.;
%let k=%sysfunc(int(%eval((&i+&num)/&num)));
%let j=%sysfunc(int(%eval(&num*&k)));
data ex.第&k.页(dblabel=yes);
set &dset.(firstobs=& iobs=&j);
run;
%end;
%mend;
%out_put_xls(sashelp.bweight,D:\Bweight.xlsx,num=10000);

在该宏中:
set语句nobs=选项获取复制数据集观测对象总数obs;

将obs值赋值给宏变量obs_cnt;

&num规定每页输出观测对象数,K值获取每个循环页码数;

J确定每个页码最末观测对象序号n

最后通过限定firstobs和obs来控制数据集的分页输出。

Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务