У меня есть список фреймов данных и дал каждому элементу в списке (например, каждый кадр данных) имя:
например.
df1 <- data.frame(x = c(1:5), y = c(11:15))
df2 <- data.frame(x = c(1:5), y = c(11:15))
mylist <- list(A = df1, B = df2)
У меня есть функция, которую я хочу применить к каждому кадру данных; В этой функции я хочу включить строку для записи результатов в файл (в конечном итоге я хочу делать более сложные вещи, такие как сохранение графиков корреляции между двумя переменными для каждого кадра данных, но я думал, что начну просто)
например.
NewVar <- function(mydata, whichVar, i) {
mydata$newVar <- mydata[, whichVar] + 1
write.csv(mydata, file = i)
}
Я хочу использовать lapply()
для применения этой функции к каждому кадру данных в моем списке
что-то вроде:
hh<-lapply(mylist, NewVar, whichVar = "y")
Я не могу понять, как назначить "i" в контексте lapply, чтобы i
выполнял итерации над именами в списке кадров данных, сохраняя несколько файлов с разными именами (в этом случае два файла названные A
и B
), которые соответствуют модифицированным кадрам данных.