Зацикливание на папках и вложенных папках

#for-loop #while-loop #directory-structure #txt

#для-петли #в то время как-цикл #структура каталогов #txt

Вопрос:

Я хочу применить функцию, которая требует перебора папок и вложенных папок в определенном каталоге. Для этого я использую функцию list.files (), чтобы перейти на более низкие уровни вложенных папок, и я ищу файлы .txt в конце «пути к вложенным папкам» для каждого цикла.

Проблема в том, что папки организованы по-разному: т. е. в одной папке будет папка A, подпапка B, а затем файлы .txt, в то время как в другой папке будут папки A, подпапка B, подпапка C, подпапка D, а затем файлы .txt. Я попытался создать код, в котором я использую цикл, пока код не найдет файлы .txt (показано ниже):

  for (f in MenthueFolder) {  subfolderslt;-list.files(f, pattern = "\.txt$") #only find the .txt files  while (length(folders)==0) { #check if any .txt files in the new list  folderslt;-list.files(f) #if not, redefine folders as all the subfolders  } }  

Кто-нибудь может мне в этом помочь?