R Lapply, доступа к элементам списка
Вопрос
Я думаю, что я скучаю с чем-то простым, но у меня проблемы с доступом к элементам списка, в генеракодицетагкоде.
Проблема: у меня есть несколько файлов на FTP, я хочу скачать и прочитать.Поэтому мне нужно указать местоположение, скачать их и прочитать их.Все, что я думал, может быть лучше всего с несколькими списками, но я не могу понять его на работу в мою функцию.
Я хотел бы иметь возможность начать с вызова генеракодицетагкода, потому что мне нужна как имя переменной lapply
, так и URL в той же функции, для его скачивания и имени их легко.
Код-пример:
a <- "ftp://user:pass@url_A1"
b <- "ftp://user:pass@url_B1"
c <- "ftp://user:pass@url_C1"
d <- "ftp://user:pass@url_D1"
lst <- list(a, b, c, d)
names(lst) <- c("a", "b", "c", "d")
.
Желаемая цель:
print(lst[[1]]), ...., print(lst[[4]])
.
Что я пробовал:
lapply(lst,
function(x) print(x[[]])
)
# Error!
.
Мой настоящий код выглядит нечто большее, как:
lapply(lst,
function(x) download.file(url = x[[]], # Error!
destfile = paste0(lok, paste0(names(x), ".csv")),
quiet = FALSE)
)
.
Редактировать:
Я знаю, что lapply(lst,...)
бросает ошибку, это просто иллюстрировать то, что я хотел бы получить.
Решение
непроверенный:
lapply(names(lst),function(x){
download.file(url = lst[[x]],
destfile = paste0(lok,paste0(x,".csv")),
quiet = FALSE)
}
.
Это должно работать, данный генеракодицетагкод определен.