Я скачал данные, используя пакет edgarWebR
.
library(edgarWebR)
ticker <- c('NVDA', 'GOOG')
years <- 5
company.details <- lapply(ticker, company_details)
У меня есть два списка, и я пытаюсь применить функцию к каждому из списков:
filing_doc <- function(href) {
sapply(href, function(x) {
filing_documents(x) %>%
filter( type == "10-K" ) %>% select(href) }) %>%
unlist(recursive = TRUE, use.names = FALSE)
}
Я применяю функцию:
company.reports <- company.details$filings %>%
filter(type == "10-K") %>%
slice(1:years) %>%
mutate(doc.href = filing_doc(href),
mdlink = paste0("[Filing Link](", href, ")"),
reportLink = paste0("[10-K Link](", doc.href, ")")) %>%
select(filing_date, accession_number, mdlink, reportLink, href, doc.href)
Однако это не будет работать, так как я пытаюсь применить это к списку из 2.
Следующие работы
company.reports <- company.details[[1]]$filings %>%
filter(type == "10-K") %>%
slice(1:years) %>%
mutate(doc.href = filing_doc(href),
mdlink = paste0("[Filing Link](", href, ")"),
reportLink = paste0("[10-K Link](", doc.href, ")")) %>%
select(filing_date, accession_number, mdlink, reportLink, href, doc.href)
Где я только что добавил [[1]] в первую строку.У меня вопрос, как я могу применить один и тот же код к нескольким спискам - я сталкиваюсь с ошибками, используя lapply
и функции конвейера.
В конечном итоге я хотел бы получить тот же вывод, что и последний кусок кода, но заполненныйинформация для всех компаний в ticker
.