【发布时间】:2016-06-20 13:17:50
【问题描述】:
我有一个带有参考位置的表格,比如 x 是起点,y 是终点。
|---------------------|------------------|
| x | y |
|---------------------|------------------|
| 10 | 35 |
|---------------------|------------------|
| 58 | 89 |
|---------------------|------------------|
然后我有另一个单位置表,我的目标是检查第二个表中的任何位置是否在第一个表中,考虑到第二个表中的位置可以在 col1 和 col2 之间。
|---------------------|
| 12 |
|---------------------|
| 27 |
|---------------------|
| 65 |
|---------------------|
我如何检查这个,因为我不能使用任何来自 dplyr 的 joins,甚至是 unique。
【问题讨论】:
-
您可以从
data.table查看foverlaps -
@rawr 你说的是哪个表?我不明白你的问题。
-
@akrun 我会检查一下,谢谢!
-
试试
df1 <- data.frame(x = c(10, 58), y = c(35, 89));df2 <- data.frame(x= c(12, 27, 65), y = c(12, 27, 65));setDT(df1, key = c('x', 'y')); setDT(df2, key = c('x', 'y'));foverlaps(df2, df1, type = "within", which = TRUE)$yid #[1] 1 1 2 -
@akrun 这看起来是个不错的帖子回答。
标签: r data.table dplyr