Одна проблема в том, что ваш пример не очень воспроизводимый . Сначала я дам код для воспроизведения подмножества данных вашего примера
MSCI_USA <- c("SLB", "NOV", "BKR", "HAL")
Затем у вашей функции get_prices
возникнут проблемы, поскольку date
не определено. Я добавлю аргумент даты.
get_prices = function(ticker, date){
df = tidyquant::tq_get(ticker, from = date) %>% dplyr::mutate(symbol = rep(ticker, length(date)))
}
С этим ваш код работает для меня
tickers_df <- purrr::map(MSCI_USA, get_prices, "2020-02-10") %>% dplyr::bind_rows()
tickers_df
#> # A tibble: 12 x 8
#> date open high low close volume adjusted symbol
#> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <chr>
#> 1 2020-02-10 34.1 34.4 33.8 34.3 7197400 33.8 SLB
#> 2 2020-02-11 34.2 34.3 33.9 34.3 8825600 34.3 SLB
#> 3 2020-02-12 35.2 35.4 34.4 35.0 9093400 35.0 SLB
#> 4 2020-02-10 24.0 24.0 22.7 22.9 4214600 22.9 NOV
#> 5 2020-02-11 23.4 23.5 22.9 23.3 3094300 23.3 NOV
#> 6 2020-02-12 23.9 24.2 23.6 23.9 2704800 23.9 NOV
#> 7 2020-02-10 22.3 22.4 22.0 22.2 3184000 22.2 BKR
#> 8 2020-02-11 22.5 22.6 22.1 22.1 4126700 22.1 BKR
#> 9 2020-02-12 22.4 22.6 21.9 22.2 6025000 22.2 BKR
#> 10 2020-02-10 21.5 21.6 21.3 21.4 10099000 21.4 HAL
#> 11 2020-02-11 21.8 21.9 21.5 21.7 12984000 21.7 HAL
#> 12 2020-02-12 22.3 22.6 21.9 22.4 9892400 22.4 HAL
Хотя его можно упростить до
tickers_df <- purrr::map_df(MSCI_USA, get_prices, "2020-02-10")