我有一个包含一个DF个人的到来和离开的日期和逗留(LOS)的总长度:
arrive <- as.Date(c("2016/08/01","2016/08/03","2016/08/03","2016/08/04"))
depart <- as.Date(c("2016/08/02","2016/08/07","2016/08/04", "2016/08/06"))
people <- data.frame(arrive, depart)
people$los <- people$depart - people$arrive
View(people)
...和含开始和结束日期另一种DF。
start <-seq(from=as.Date("2016/08/01"), to=as.Date("2016/08/08"), by="days")
end <-seq(from=as.Date("2016/08/01"), to=as.Date("2016/08/08"), by="days")
range <- data.frame(start, end)
View(range)
如何添加一列范围$人口普查来算,每天有多少人在场? 在我的例子中,值我正在寻找将如下所示:
range$census <- c(1,1,2,3,2,2,1,0)
什么我不知道的是如何从一个DF值上应用计算不同长度的另一DF。 以下是我试过到目前为止:
people$count <- 1
range$census <- sum(people$count[people$arrival <= range$start & people$depart >= range$end])
注:例如,开始在上面/结束日期是同一天,但我也需要看大的范围,其中开始/结束日期是一个月或一年分开。