我希望使用模式匹配将多个.csv文件读入单个SAS数据集。例如,如果在目录/home/datasets
中有5个文件:
/home/datasets
~/output_group1a.csv
~/output_group1b.csv
~/output_group1c.csv
~/output_group2a.csv
~/output_group2b.csv
都具有已知和相同的结构和数据类型。我只想读取那些与组1对应的文件,而不必显式地指定文件名。
发布于 2015-02-02 12:30:25
您可以在infile语句中使用通配符。如果每个文件中都有头文件,则需要对其进行说明。这里有一个更多的例子。
https://gist.github.com/statgeek/4c27ea9a7ed6d3528835
data try01;
length filename txt_file_name $256;
retain txt_file_name;
infile "Path\*.txt" eov=eov filename=filename truncover;
input@;
if _n_ eq 1 or eov then do;
txt_file_name = scan(filename, -2, ".\");
eov=0;
end;
else input
*Place input code here;
;
run;
https://stackoverflow.com/questions/28285450
复制