楼主: webgu
7646 7

[问答] 如何一次性导入某一文件夹下所有sav文件 [推广有奖]

贵宾

学科带头人

95%

还不是VIP/贵宾

-

TA的文库  其他...

Python与统计

SAS与统计

威望
2
论坛币
102554 个
通用积分
3.6187
学术水平
475 点
热心指数
493 点
信用等级
434 点
经验
62369 点
帖子
1555
精华
4
在线时间
2201 小时
注册时间
2009-5-4
最后登录
2024-4-23

初级学术勋章 初级热心勋章 初级信用勋章 中级学术勋章 中级热心勋章 中级信用勋章

楼主
webgu 发表于 2011-2-24 22:52:42 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
sas9.2 可以用PORC IMPORT导入SAV文件,现在某一文件夹下,有多个SAV文件,命名无规律,现欲一次性将其导入SAS的一个逻库库,并且数据集命名不变,与原文件名相同,请教如何处理?
如 d;\test 文件夹下有    voa.sav , bbc.sav, cnn.sav,……等 SAV文件。

最后在ok逻辑库下生成  ok.voa ,ok.bbc,ok.cnn……等数据集。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:sav 文件夹 一次性 import 命名无规律 一次性 sav导入 命名无规律

回帖推荐

邢不行 发表于3楼  查看完整内容

这段代码是导入一个文件夹中所有的TXT文件,做相应修改就可以导入一个文件夹中所有的sav文件

本帖被以下文库推荐

沙发
邢不行 在职认证  发表于 2011-2-25 09:32:52
下面这篇博文是讲如何导入一个文件夹中所有txt格式的数据的,同样命名无规律。
导入sav格式和导入txt格式的方法是一样的,楼主可参考
http://blog.sina.com.cn/s/blog_6a90ae320100namg.html

藤椅
邢不行 在职认证  发表于 2011-2-25 13:50:14
  1. x "dir E:\a\*.txt /b > E:\a\all.txt";
  2. %macro daoru(name) ;                                 
  3. PROC IMPORT OUT= WORK.S&name                        
  4.             DATAFILE= "E:\a\&name..TXT"              
  5.             DBMS=TAB REPLACE;
  6.      GETNAMES=YES;
  7.      DATAROW=3;                                    
  8. RUN;
  9. %mend;
  10. data _null_;
  11.         infile "E:\a\all.txt";
  12.         input str:$100.;
  13.         call execute(compress('daoru('||scan(str,1,'.')||');'));
  14. run;      
复制代码
这段代码是导入一个文件夹中所有的TXT文件,做相应修改就可以导入一个文件夹中所有的sav文件
已有 2 人评分经验 论坛币 热心指数 收起 理由
bakoll + 3 + 3 精彩帖子
crackman + 20 + 1 鼓励积极发帖讨论

总评分: 经验 + 23  论坛币 + 3  热心指数 + 1   查看全部评分

板凳
webgu 发表于 2011-2-26 09:10:47
邢不行 发表于 2011-2-25 13:50
  1. x "dir E:\a\*.txt /b > E:\a\all.txt";
  2. %macro daoru(name) ;                                 
  3. PROC IMPORT OUT= WORK.S&name                        
  4.             DATAFILE= "E:\a\&name..TXT"              
  5.             DBMS=TAB REPLACE;
  6.      GETNAMES=YES;
  7.      DATAROW=3;                                    
  8. RUN;
  9. %mend;
  10. data _null_;
  11.         infile "E:\a\all.txt";
  12.         input str:$100.;
  13.         call execute(compress('daoru('||scan(str,1,'.')||');'));
  14. run;      
复制代码
这段代码是导入一个文件夹中所有的TXT文件,做相应修改就可以导入一个文件夹中所有的sav文件
谢谢,程序有点问题,调用宏时出错。

报纸
邢不行 在职认证  发表于 2011-2-26 09:25:47
4# webgu

可以去二楼的连接看,上面有讲解

地板
webgu 发表于 2011-2-26 10:07:57
邢不行 发表于 2011-2-25 13:50
  1. x "dir E:\a\*.txt /b > E:\a\all.txt";
  2. %macro daoru(name) ;                                 
  3. PROC IMPORT OUT= WORK.S&name                        
  4.             DATAFILE= "E:\a\&name..TXT"              
  5.             DBMS=TAB REPLACE;
  6.      GETNAMES=YES;
  7.      DATAROW=3;                                    
  8. RUN;
  9. %mend;
  10. data _null_;
  11.         infile "E:\a\all.txt";
  12.         input str:$100.;
  13.         call execute(compress('daoru('||scan(str,1,'.')||');'));
  14. run;      
复制代码
这段代码是导入一个文件夹中所有的TXT文件,做相应修改就可以导入一个文件夹中所有的sav文件
       其中,call execute(compress('daoru('||scan(str,1,'.')||');')); 有误、
需改为:call execute(compress('%daoru('||scan(str,1,'.')||');'));
已有 1 人评分经验 热心指数 收起 理由
crackman + 40 + 1 鼓励积极发帖讨论

总评分: 经验 + 40  热心指数 + 1   查看全部评分

7
邢不行 在职认证  发表于 2011-2-27 12:15:41
6# webgu 恩 对的 疏忽了 不好意思

8
やはり好き 发表于 2013-12-29 10:54:27
请问如何把sas格式的文件转换成spss呢。。。。没有sas的程序   跪求

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 04:02