Я пытаюсь автоматизировать запрос API к Google Analytics с помощью googleAnalyticsR.
Проблема заключается в том, что при таком большом количестве данных запрос должен быть разбит на более мелкие порции для правильного извлечения данных.
Последний блок должен занимать последний день с момента последнего вызова API, сумма 1 день. А для end_date это должен быть день до сегодняшнего дня.
Мне бы хотелось разделить большой диапазон, например: от 2017-01-01
до 2020-02-21
кусками по 5 дней, и сделать вызов API с использованием каждого чанка, чтобы API не свернулся.
Ожидаемый data frame
вывод:
starts ends
1 2017-01-01 2017-01-05
2 2017-01-06 2017-01-10
3 2017-01-11 2017-01-15
...
n 2020-02-17 today-minus-1-day
ОБНОВЛЕНИЕ 1:
Я нашел этот похожий код в репозитории Марка на github.
Возвращает df с датами начала и окончания на основе montlhy.
add_months <- function(date, n){
seq(date, by = paste (n, "months"), length = 2)[2]
}
make_date_ranges <- function(start, end){
starts <- seq(from = start,
to = Sys.Date()-1 ,
by = "1 month")
ends <- c((seq(from = add_months(start, 1),
to = end,
by = "1 month" ))-1,
(Sys.Date()-1))
data.frame(starts,ends)
}
## useage
make_date_ranges(as.Date("2017-01-01"), Sys.Date())
В конце make_date_ranges выводит df с датами начала и окончания, в месячных единицах мне нужно, чтобы он выводил куски диапазона за 5 дней.