如果正确理解了你的问题,批量导入可以用pipe把所有文件名存成一个SAS dataset,然后在data step里先读入这个dataset,再在infile statement用filevar来打开需要读取的文件,这样每一个loop都会读取相应的文件,同时可以自定每个变量的格式。
以下来自
Introduction to SAS. UCLA: Statistical Consulting Group.
from http://www.ats.ucla.edu/stat/sas/faq/multi_file_read.htm (accessed December 5, 2015).
%let dirname = c:\work\raw_data_files;
filename DIRLIST pipe "dir /B &dirname\*.txt";
data dirlist ;
length fname $256;
infile dirlist length=reclen ;
input fname $varying256. reclen ;
run;
proc print data = dirlist;
run;
***
Obs fname
1 file01.txt
2 file3.txt
3 file7.txt
***
data all_text (drop=fname);
length myfilename $100;
length name $25;
set dirlist;
filepath = "&dir