R:在列中显示具有重复元素的所有行

dmo*_*ner 3 r dplyr

这样的函数是否存在于任何包中?

isdup <- function (x) duplicated (x) | duplicated (x, fromLast = TRUE)
Run Code Online (Sandbox Code Playgroud)

我的目的是使用它dplyr来显示给定列中具有重复值的所有行.我还需要第一次出现重复元素.

例如,在这个data.frame中

dat <- as.data.frame (list (l = c ("A", "A", "B", "C"), n = 1:4))
dat

> dat
  l n
1 A 1
2 A 2
3 B 3
4 C 4
Run Code Online (Sandbox Code Playgroud)

我想显示列l重复的行,即.具有A值的人:

library (dplyr)
dat %>% filter (isdup (l))
Run Code Online (Sandbox Code Playgroud)

回报

  l n
1 A 1
2 A 2
Run Code Online (Sandbox Code Playgroud)

Nic*_*sen 10

dat %>% group_by(l) %>% filter(n() > 1)

我不知道它是否存在于任何软件包中,但由于您可以轻松实现它,我只想继续自己实现它.