R 是否有任何方法可以根据特定条件从数据帧中删除重复项?

R 是否有任何方法可以根据特定条件从数据帧中删除重复项?,r,R,我希望使用distinct()函数从代码中删除重复项,但是我不希望它根据附加条件删除一些重复项 例如,我的数据框有position、place、company和source变量,因此我只希望在position、place和company相同,而source变量不同时删除重复的行。这就是我正在使用的函数 omit <- distinct(final, position, place, company, .keep_all = TRUE) 省略使用base R,您可以为重复项编制索引,然后将

我希望使用
distinct()
函数从代码中删除重复项,但是我不希望它根据附加条件删除一些重复项

例如,我的数据框有
position
place
company
source
变量,因此我只希望在
position
place
company
相同,而
source
变量不同时删除重复的行。这就是我正在使用的函数

omit <- distinct(final, position, place, company, .keep_all = TRUE)

省略使用base R,您可以为重复项编制索引,然后将其子集添加到原始数据帧:

set.seed(123)
dd X1 X2 X3 fv
#>112A
#>2 1 2 a
#>42A
#>6122b
#>7.2.1.2 b
#>9 2 1 b
#>10121B
col_dup 2 1 2 a
#>42A
#>9 2 1 b
#>10121B

这不管用吗?
duplicated()
将返回布尔值,您可以将其与其他条件结合起来。@StephenEnderson否,因为我需要它遵循附加条件,即仅当源变量不匹配时才删除重复项。@Alexis我必须尝试一下,谢谢。好的,请原谅我的困惑-那么这只是
不同的(最终,.keep_all=TRUE)