RL oop для копирования файлов в разные папки в соответствии со значениями во фрейме данных - PullRequest
2 голосов
/ 10 марта 2020

Я хочу написать простое l oop, которое будет создавать копии всех изображений в папке (.jpg) и сортировать их в разные папки в соответствии со значениями в таблице.

Например, если у меня было три изображения и я хотел переместить их в папки в соответствии с этой таблицей: enter image description here

Я могу читать в файлах, используя

files <- list.files(dir, pattern="*.JPG", full.names=TRUE, recursive=FALSE)

, но я мог бы использовать некоторую справку по кодированию l oop, которая будет использовать условный оператор для создания копий файлов в новых папках, используя соответствующую строку из столбца 'destination', которая соответствует коэффициенту ' group '.

Это похоже на этот вопрос и этот вопрос , но отличается тем, что я хочу скопировать изображения и переименовать их на основе значений в таблице, а не чем перебирать несколько таблиц.

Заранее спасибо !!

1 Ответ

0 голосов
/ 10 марта 2020

Большое спасибо @Gregor Thomas, вот что я придумал:

dir <- "C:/path"

setwd(dir)
data <- read.csv("key.csv")

subfolder_names <- data$destination
for (j in 1:length(subfolder_names)){
  folder<-dir.create(paste0(dir,subfolder_names[j]))
}

files <- list.files(dir, pattern="*.JPG", full.names=TRUE, recursive=FALSE)

file.copy(from = file.path(files), to = file.path(data$destination, data$name))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...