Как применить запрос API через список дат в R? - PullRequest
0 голосов
/ 06 апреля 2020

Я пытаюсь запустить этот фрагмент кода, чтобы получить данные о погоде при динамическом изменении даты начала и окончания из двух списков, созданных ниже:

    London<-weather_api("premium/v1/past-weather.ashx?key=8085db2e3cc041239be151146200304&q=London&format=json&date=2018-01-01&enddate=2018-02-01&tp=24")

    start_dates_list <- seq(as.Date("2018-01-01"), as.Date("2020-03-01"), by="months")
    end_dates_list <- seq(as.Date("2018-02-01"), as.Date("2020-04-01"), by="months")

Как бы я go сделал это?

Спасибо.

1 Ответ

1 голос
/ 06 апреля 2020

В одну сторону:

start_dates_list <- seq(as.Date("2018-01-01"), as.Date("2020-03-01"), by="months")
end_dates_list <- seq(as.Date("2018-02-01"), as.Date("2020-04-01"), by="months")
allURLs <- sprintf("premium/v1/past-weather.ashx?key=8085db2e3cc041239be151146200304&q=London&format=json&date=%s&enddate=%s&tp=24",
                   start_dates_list, end_dates_list)
alldata <- lapply(allURLs, weather_api)

И в зависимости от того, как форматируется вывод, вы можете объединить данные с одним из:

dat <- do.call(rbind.data.frame, alldata)
dat <- data.table::rbindlist(alldata)
dat <- dplyr::bind_rows(alldata)

Возможно, вы также захотите go перейдите на страницу своего аккаунта (там, где когда-либо weather_api тянется к) и измените свой ключ API, так как вы теперь транслируете его на весь мир ... и нет никаких возвратов / отмен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...