Этот вопрос является продолжением вопроса Подсчет дней в году.
Я сделал то, что предложил Дирк, с огромным data.frame. Мои команды выглядят так:
dateSeq <- function(df) {
res <- seq(as.Date(df["begin"]), as.Date(df["end"]), by = "1 day")
format(res, "%Y")
}
dataFrame$seq <- apply(dataFrame, 1, dateSeq)
dataFrame_years <- do.call("c", dataFrame[["seq"]])
rm(dataFrame)
gc()
gc()
dataFrame_tab <- table(dataFrame_years)
Теперь эти команды заполняют мои 8 ГБ оперативной памяти и 2 ГБ пространства подкачки. В то же время мой процессор скучно с загрузкой процессора может быть 15%.
Кроме того, моему компьютеру требуется целая вечность, чтобы исполнить мои «желания». Могу ли я переложить часть работы на ЦП и немного разгрузить оперативную память?