【发布时间】:2015-09-24 09:45:50
【问题描述】:
我的问题涉及来自dplyr 的distinct 函数。
首先,设置数据:
set.seed(0)
df <- data.frame(
x = sample(10, 100, rep = TRUE),
y = sample(10, 100, rep = TRUE)
)
考虑distinct的以下两种用法。
df %>%
group_by(x) %>%
distinct()
df %>%
group_by(x) %>%
distinct(y)
第一个产生与第二个不同的结果。据我所知,第一组操作找到“x 的所有不同值,并返回y 的第一个值”,而第二组操作找到“对于x 的每个值,找到所有不同的值y"。
为什么会这样
df %>%
distinct(x, y)
df %>% distinct()
产生同样的结果?
编辑:看起来这是一个已知的错误:https://github.com/hadley/dplyr/issues/1110
【问题讨论】:
-
仅供参考,这似乎已得到修复。所有 4 个示例对我来说都返回了相同的结果,这正是我所期望的。