У меня есть пара сотен папок (наблюдений), каждая из которых содержит несколько текстовых файлов (каждая из которых является пробной). Мне удалось с некоторой помощью выяснить, как перебирать текстовые файлы и создавать одно изображение графика, чтобы оно сохранялось в папке / каталоге ...
setwd("~/data/observation1")
library(ggplot2)
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)
}
ggplot(mydata, aes(x = place, y = firing_rate, colour = ID)) + geom_point() + geom_path()
dev.print(pdf, 'observation1.pdf')
Это работает отлично, но теперь я пытаюсь, так сказать, уменьшить масштаб, чтобы я мог применить вышеупомянутый код ко всем другим папкам / каталогам (наблюдение2, наблюдение3 и т. Д.) Без необходимости проходить и изменять setwd () один за другим.
Кроме того, было бы здорово, если бы я мог как-то просто сохранить все графики (по одному для каждой папки) в виде одного большого PDF-файла с несколькими сотнями страниц.
Любой совет о том, как сделать эти две вещи или даже начать их, очень ценится, и я с удовольствием отвечу на любые вопросы.