如何打开以变量值命名的文件,该变量跨SAS中的行变化



我正在尝试在SAS中打开一个文件,其中文件的名称根据变量的值更改了每行的名称。我要打开的所有文件均在同一目录中名为"一年中的一天"(127.csv,128.csv,129.csv等(。我的SAS数据有一个名为" Day"的列,对于每行,我想打开当天名称的文件,从该文件中提取一个值,然后将其添加到我的原始文件中。当名称用变量的值更改每行时,打开文件的最佳方法是什么?如果这不清楚,请参阅我的附加数据。谢谢。

通常,如果要从列表中驱动读取一组文件,则在INFILE语句上使用FILEVAR=选项。

data want;
  set have ;
  length fname $200 ;
  fname = catx('/',"&path",cats(day,'.csv'));
  infile csv filevar=fname dsd firstobs=2 end=eof truncover ;
  do while (not eof);
    input ..... ;
    output;
  end;
run;

将您需要在DO循环内读取CSV文件所需的任何代码。确保使用输出语句明确写出观察值,因为数据步骤的每个迭代都会处理一个整个文件。

最新更新