【发布时间】:2017-08-05 07:06:52
【问题描述】:
我有两组坐标:
- 用 49,898 个 x 和 y 组合设置 A
- 设置 B 有 36,404 个 x 和 y 组合。
- (A 组包含 B 组中的所有组合以及额外的 13,494 个组合)
- Excel 或 R 中的解决方案都很好
我想提取这组独特的 13,494 种组合。为了尝试使用 Excel 或 R 提取这些唯一值,我已将 Set B 的 x & y 坐标组合复制到与 Set A 相同的列中。
表格布局为两列 Xcod, Ycod : x and y example
我已经阅读了一些建议使用 excel 和 R 的帖子,它们部分解决了这个问题,除了输出总是 49,898 个组合,因为它们保持了“原始”的重复值集。我理解为什么会这样,但我想要完全删除这些重复项,以便我有一个包含 Set A 独特的 13,494 个组合的最终输出。
[Excel] 我使用了以下:Data -> Advanced Filter -> Unique records only
[R] 我使用了这个线程中的以下代码:
UniqRemDups <- unique(RemDups[,c('Xcod','Ycod')])
How to filter for unique combination of columns from an R dataframe
任何帮助/建议将不胜感激。
【问题讨论】:
-
你能提供一个reproducible example吗?
-
在这种特定情况下,您似乎有一个范围内的正整数坐标,以及 1000 的所有倍数(实际上是 5000)。因此,您可以将每个坐标对压缩成一个 32b 整数表示,例如
(Xcod/1000)*1e4 + (Ycod/1000)例如4405*1e4 + 4725 = 44054725 -
你不想要两个集合之间的唯一组合,你只想要 Set A \ Set B,即 set 'less' 操作。这些不是组合,只是数据集的普通行。
标签: r excel unique combinations set-operations