Как импортировать 100 CSV-файлов из каждой из 1000 папок

У меня есть 1000 папок в каталоге с именем folder1, folder10, folder 25, .......folder10200. Каждая из этих 1000 папок содержит 100 CSV-файлов с именами file1, file2,..... file100 Задача, которую мне нужно выполнить, - это создать один набор данных с производными переменными из значений в file1, file2 и т. Д. Каждой папки. Мне нужно получить набор данных с 1 наблюдением на файл на папку. Итак, в общей сложности 100*1000 строк, пожалуйста, предложите

1 ответ

Я думаю, что код не требует пояснений, если вы не получите его, дайте мне знать.

  • Предположения
  • Имена папок похожи - Папка1, Папка2, Папка3 и т. Д. (Хотя вы упомянули иное, но неясно, что на самом деле представляет собой шаблон, похоже на точку доступа)
  • Имена файлов похожи - файл1, файл2, файл3 и т. Д.
  • Все файлы имеют одинаковую структуру

%macro read_all_files();

%do i=1 %to 1000;
   %do j=1 %to 100;
      data temp;
      infile "\path\folder&i.\file&j..csv";
      input var1 var2;
      run;

Proc append base=final data=temp force;
run;

    %end;
%end
%mend read_all_files();

%read_all_files;
Другие вопросы по тегам