У меня есть код, который объединяет несколько файлов данных из папки в один график ggplot и сохраняет его в другой папке:
setwd("~/data/observation1")
files <- list.files(pattern=".txt")
for (i in files){
mylist <- lapply(setNames(files, files), read.table, header = T)
mylist <- lapply(names(mylist), function(i) {cbind(mylist[[i]], ID = i)})
mydata <- do.call(rbind, mylist)
}
setwd("~/data/graphs")
pdf()
ggplot(mydata, aes(x = place, y = firing_rate, colour = ID)) + geom_point() + geom_path()
dev.off()
Я хочу применить это ко всем другим папкам в папке данных (наблюдение2, наблюдение3, ... наблюдение200), без необходимости каждый раз вручную изменять setwd. Есть ли способ сделать быстрее? Может быть, другой цикл или какое-то приложение от lapply?