【发布时间】:2018-07-14 00:25:53
【问题描述】:
我想得到特定日期之间计数(行)的 sum()。我在堆栈上找到了一些解决方案,但关键是我的第二个数据帧比第一个数据帧大得多。
数据集一
dim(foo1) # 600 / 2
Start End
2017-10-24 22:33:59 2017-10-24 22:43:59
2017-11-13 06:34:59 2017-11-13 06:44:59
2017-11-13 06:52:00 2017-11-13 07:02:00
2017-11-13 07:16:59 2017-11-13 07:26:59
2017-11-13 07:35:59 2017-11-13 07:45:59
数据集二
dim(foo2) # 60.000 / 2
Count Time
1 2017-10-01 13:45:02
1 2017-10-01 12:53:23
1 2017-10-01 12:20:56
1 2017-10-01 12:31:12
我想要 foo2 中出现在 foo1 中的开始日期和结束日期之间的所有行(计数)的总和)。结果应该是 Foo1 + new_column(包含计数)
这是我开始的不起作用的“解决方案”:
for(i in 1:nrow(foo1)){
foo1$new_column[i] <-sum(foo2$Count[which(
foo2$Time >= foo2$Start[i] &
foo2$Time <= foo2$End[i])])
}
【问题讨论】:
-
您问的问题和one here 完全相同吗?你甚至有相同的时间框架和不重叠。
-
样本数据似乎不正确。来自
foo2$Time的时间戳没有落在foo1$Start-foo1$End的范围内 -
我猜我们是同一个类的phiver。抱歉没找到。