dplyr::distinct-仅保留选定列,而不是所有列
应用dplyr::distinct-仅保留选定列,而不是所有列,r,dplyr,R,Dplyr,应用dplyr::distinct,为了只保留选定的列而不是全部(.keep_all=TRUE),我当前正在使用select选择后期: 库(dplyr) foo_df%distinct(id1,id2,.keep_all=TRUE)%%>%select(id1,id2,val1) #我想保留“val1”和唯一组合的标识符 #>id1 id2 val1 #>11A #>2 3 4 c #>packageVersion('dplyr') #> [1] ‘0.7.7’ 由(v0.2.1)于2018年
dplyr::distinct
,为了只保留选定的列而不是全部(.keep_all=TRUE
),我当前正在使用select
选择后期:
库(dplyr)
foo_df%distinct(id1,id2,.keep_all=TRUE)%%>%select(id1,id2,val1)
#我想保留“val1”和唯一组合的标识符
#>id1 id2 val1
#>11A
#>2 3 4 c
#>packageVersion('dplyr')
#> [1] ‘0.7.7’
由(v0.2.1)于2018年12月19日创建
但是有没有更简洁的方法呢?很高兴被指向另一个函数
如果这是一个骗局,我真可耻 也许data.table语法更符合您的喜好。它比dplyr更简洁
library(data.table)
DT <- data.table(foo_df)
# ?data.table::unique
unique(DT[, .(id1, id2, val1)], by = c("id1", "id2"))
id1 id2 val1
1: 1 1 a
2: 3 4 c
库(data.table)
你可以选择(-val2)
,当然这也是一个选项。但如果有更多的列要“取消选择”,这就不太实际了。我担心data.table
会提供这种语法。。。也许我真的应该开始了解一下data.table
。。。