R найти папку под родительским каталогом, используя цикл - PullRequest
0 голосов
/ 03 октября 2018

У меня есть родительская папка и два подкаталога уровня, и я пытаюсь найти папку 3-го уровня, в которой папка уровня 2, структура выглядит следующим образом

Родительская папка -> уровень 1

Папка менеджера: Том / Джерри / Нэнси и т. Д. -> уровень 2

Папка компании: компания A / компания B / Компания C и т. Д. -> уровень 3

например, родительпапка / Tom / company A

, поэтому я хотел бы выяснить, в какой компании A находится папка менеджера, потому что компания A не всегда подчиняется Tom, поэтому путь к каталогам меняется каждый месяц.В настоящее время я думаю о следующем коде, но хотел бы, если есть более элегантный способ сделать.Спасибо!

mgr = c("Tom", "Nancy", "Jerry")
for i in length(mgr) { 
if(dir.exist(paste0("parent folder/", mgr[i],"/company A")) {the rest code}
else{i = i+1
if(dir.exist(paste0("parent folder/", mgr[i],"/company A") {the rest code}
else{i=i+1
if(dir.exist(paste0("parent folder/", mgr[i],"/company A") {the rest code}}}

1 Ответ

0 голосов
/ 03 октября 2018
#create a vector with all subfolders from "parent folder/" 
dirs <- list.dirs(path = "parent folder/", full.names = TRUE, recursive = TRUE)
#show the subdirectories that contain "company A"  in it's path
dirs[ grepl( "company A", dirs )]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...