使用dplyr仅筛选唯一值列表中的一个

使用dplyr仅筛选唯一值列表中的一个,r,filter,dplyr,R,Filter,Dplyr,好的,我有一个数据帧,在R中如下所示: df <- structure(list(Job_Bin = c("EXECUTIVE", "EXECUTIVE", "EXECUTIVE", "STAFF ASSISTANTS", "STAFF ASSISTANTS", "STAFF ASSISTANTS", "STAFF ASSISTANTS", &

好的,我有一个数据帧,在R中如下所示:

df <- structure(list(Job_Bin = c("EXECUTIVE", 
"EXECUTIVE", "EXECUTIVE", 
"STAFF ASSISTANTS", "STAFF ASSISTANTS", 
"STAFF ASSISTANTS", "STAFF ASSISTANTS", 
"STAFF ASSISTANTS", "BARREL RIDER", 
"BARREL RIDER"), Code = c("101", 
"101", "101", "102", "102", "102", "102", "102", "103", "103"
)), row.names = c(NA, 10L), class = "data.frame")
如果可能的话,我想使用dplyr/tidyverse来实现这一点

我尝试使用以下命令,但返回错误:

df %>% 
  filter(unique(Code))

Error: Problem with `filter()` input `..1`.
x Input `..1` must be of size 422 or 1, not size 120.
i Input `..1` is `unique(Code)`.

尝试此
base R
解决方案:

#Code
dfnew <- df[!duplicated(df$Job_Bin),]

我们可以使用
distinct
from
dplyr

library(dplyr)
df %>% 
    distinct
如果它基于单个列

df %>%

   distinct(Job_Bin, .keep_all = TRUE)
#           Job_Bin Code
#1        EXECUTIVE  101
#2 STAFF ASSISTANTS  102
#3     BARREL RIDER  103

或基本R中的
唯一
`

unique(df)
df%>%不同(作业箱、代码、.keep\u all=TRUE)

输出:


当然可以,但是dplyr?@JohnThomas添加了一个带有
dplyr
的更新。希望有帮助@约翰索瘤伴有
tidyverse
,这是典型的治疗方法。谢谢
library(dplyr)
df %>% 
    distinct
df %>%

   distinct(Job_Bin, .keep_all = TRUE)
#           Job_Bin Code
#1        EXECUTIVE  101
#2 STAFF ASSISTANTS  102
#3     BARREL RIDER  103
unique(df)