【发布时间】:2013-10-30 08:42:30
【问题描述】:
我看到了关于加入不等式条件R data.table join with inequality conditions 的问题,我问自己,我们将如何继续加入两个data.tables,这两个条件之间存在不等式条件?
这通常在时间序列中非常有趣,我们希望将一个表 X 与另一个 Y 连接,但连接应该选择 X 中的第一行,该行在小于 Y 中行的时间的时间范围内匹配。
dt <- data.table(rep(c("A", "B", "C"), 4), 5:16)
dt2 <- data.table(rep(c("A", "B", "C"), 4), 1:12)
cbind(dt,dt2)
V1 V2 V1 V2
1: A 5 A 1
2: B 6 B 2
3: C 7 C 3
4: A 8 A 4
5: B 9 B 5
6: C 10 C 6
7: A 11 A 7
8: B 12 B 8
9: C 13 C 9
10: A 14 A 10
11: B 15 B 11
12: C 16 C 12
现在,从 dt 中获取与变量 V1 上的 dt2 中的行匹配但 dt$V2 小于 dt2$V2 的行。
你会怎么做呢?
【问题讨论】:
标签: r data.table