类似于dplyr :: distinct的函数

时间:2019-07-25 18:30:51

标签: r dplyr

我有一个x,y位置(以像素为单位)的点的数据框,并且想过滤掉所有+/- 5像素的点。是否有类似于dplyr :: distinct()的函数,但有一个截止值。

示例数据集:

X.1 X Y      
     1637614
     2559503
     3601459
     4601459
     5603462
     6604460

我期望输出为:

X.1 X Y      
     1637614
     2559503
     3 601 459 <-保留第一个元素。

谢谢

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案是将数据四舍五入到最接近的5的倍数,然后使用常规的不同函数:

X.1$x <- round(X.1$x/5)*5
X.1$y <- round(X.1$y/5)*5

distinct(X.1,.keep_all = TRUE)

#Output:
X.1  X  Y

1   635 615

2   560 505

3   600 560

您的问题可能需要更高的准确性。