这个问题是Count days per year的后续问题。
我按照 Dirk 的建议做了一个巨大的 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 GB 内存和 2 GB 交换空间。与此同时,我的处理器很无聊,处理器负载可能只有 15%。
此外,我的电脑需要很长时间才能满足我的“愿望”。我可以将一些工作转移到 CPU 上并减轻我的 Ram 的负担吗?