经管之家App
让优质教育人人可得
立即打开
全部版块
我的主页
›
论坛
›
数据科学与人工智能
›
数据分析与数据科学
›
SAS专版
如何实现批量导入或导出数据
楼主
yumenderen
9402
4
收藏
2011-07-20
悬赏
10
个论坛币
已解决
发现贵宝地,想请教一个问题:
比如说我有10个清单(ss1,ss2..ss10),想分别生成10个不同的数据集。他们的字段顺序格式都是一样的,在导入时,往往就要反复运行同样的导入程序(当然还要修改数据集得名称等),很是麻烦
想请教一下:如何实现批量的导入这些数据,分别生成数据集(ss1,ss2...)。是要用宏来做还是怎么用循环,谢谢啦
本人菜鸟,最好能解答的详细点,附上程序语句,呵呵
最佳答案
shenliang_111
查看完整内容
我给你三组程序,应该可以解决楼主的问题 /* 批量导入多个excel*/ %macro ss/parmbuff; %let i=1; %let dsn=%scan(&syspbuff,&i); %put &dsn; %do %while(&dsn ne); PROC IMPORT OUT=WORK.a&i DATAFILE= "D:\&dsn..xls" DBMS=EXCEL REPLACE; SHEET="Sheet1$"; GETNAMES=yes; MIXED=NO; SCANTEXT=YES; USEDATE=YES; SCANTIME=YES; RUN; %let i=%eval(&i+ ...
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
全部回复
沙发
shenliang_111
2011-7-20 19:59:24
我给你三组程序,应该可以解决楼主的问题
/* 批量导入多个excel*/
%macro ss/parmbuff;
%let i=1;
%let dsn=%scan(&syspbuff,&i);
%put &dsn;
%do %while(&dsn ne);
PROC IMPORT OUT=WORK.a&i
DATAFILE= "D:\&dsn..xls"
DBMS=EXCEL REPLACE;
SHEET="Sheet1$";
GETNAMES=yes;
MIXED=NO;
SCANTEXT=YES;
USEDATE=YES;
SCANTIME=YES;
RUN;
%let i=%eval(&i+1);
%let dsn=%scan(&syspbuff,&i);
%end;
%mend ss;
options nomlogic nomprint nosymbolgen;
%ss(1,2,book1,shen)
/*批量导出多个excel*/
%macro sss/parmbuff;
%let i=1;
%let dsn=%scan(&syspbuff,&i);
%put &dsn;
%do %while(&dsn ne);
PROC EXPORT DATA= WORK.&dsn
OUTFILE= "E:\&dsn..xls"
DBMS=EXCEL REPLACE;
SHEET="Sheet";
RUN;
%let i=%eval(&i+1);
%let dsn=%scan(&syspbuff,&i);
%end;
%mend sss;
%sss(test1 test2 test3)
/*特定逻辑库下的所有数据集转化为excel文件*/
%macro sss/parmbuff;
%let i=1;
%let lib=%scan(&syspbuff,&i);
%let i=2;
%let dsn=%scan(&syspbuff,&i);
%put &dsn;
%do %while(&dsn ne);
PROC EXPORT DATA=&lib..&dsn
OUTFILE= "E:\&dsn..xls"
DBMS=EXCEL REPLACE;
SHEET="Sheet";
RUN;
%let i=%eval(&i+1);
%let dsn=%scan(&syspbuff,&i);
%end;
%mend sss;
%macro tt(lib);
proc sql noprint;
select memname into :namelist separated by ' '
from dictionary.tables
where libname=upcase("&lib") and memtype='DATA';
%put &namelist;
quit;
%sss(&lib &namelist)
%mend;
%tt(s)
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
藤椅
yumenderen
2011-7-20 21:09:52
楼上的,分都给你算了,呵呵
我的数据清单是unl格式的,上面的程序应该如何调整呀
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
板凳
yugao1986
2011-7-20 21:14:52
论坛上有类似的帖子,可以先搜一下是否和自己的问题一样。个人感觉论坛上的帖子能解决你的问题。
1.是一个excel文件下的十个清单?看这个帖子:
https://bbs.pinggu.org/viewthread ... p;page=1#pid9539589
2.如果是单独的excel文件看:
https://bbs.pinggu.org/thread-1111573-1-1.html
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
报纸
butterfly1107
2014-10-25 10:49:44
谢谢,学习啦
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
相关推荐
求助排序编号问题
sas 如何实现快速筛选?
变量中加入分隔符
如何实现给很多数据集增加子字段
sas 匹配有重复值的两个数据集,如何实现?
SAS中如何实现查找替换功能
请问高手如何根据条件创建变量为字符或数字?谢谢!
sas中如何实现数据集做差
如何实现数据的交叉匹配?
SAS选择观测问题
栏目导航
SAS专版
Stata专版
经管文库(原现金交易版)
计量经济学与统计软件
市场营销
金融实务版
热门文章
表格结构数据特征与CDA数据分析师:精准适配 ...
2025全球人工智能技术应用洞察报告
【中国电信】2025年云计算研究白皮书
奇瑞QQ焕新归来
普华永道 - 中国影响力报告2025
房地产行业:2026年,年轻人应该先买车还是 ...
【24更新,自用整理!】2007-2024省级环境保护 ...
CDA数据分析脱产就业班于2026年3月7日开班! ...
表格结构数据的核心特征及具象实例解析
湖南统计年鉴2025(Excel版)
推荐文章
2026JG学术冬训营:从Stata初高到Python机器 ...
【必看】【本版版规,欢迎发悬赏贴求助】
26年寒假天津站|Gemini论文写作&数据分析 ...
关于如何利用文献的若干建议
关于学术研究和论文发表的一些建议
关于科研中如何学习基础知识的一些建议 (一 ...
一个自编的经济学建模小案例 --写给授课本科 ...
AI智能体赋能教学改革: 全国AI教育教学应用 ...
2025中国AIoT产业全景图谱报告-406页
关于文献求助的一些建议
说点什么
分享
微信
QQ空间
QQ
微博
扫码加好友,拉您进群
各岗位、行业、专业交流群