Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 按另一列中的唯一值删除重复项_R_Duplicates_Dplyr - Fatal编程技术网

R 按另一列中的唯一值删除重复项

R 按另一列中的唯一值删除重复项,r,duplicates,dplyr,R,Duplicates,Dplyr,我有一个如下所示的数据帧: COLA COLB COLC A nb 1 A nc 0.8 A bc 0.7 A nb 0.7 <------------ B nb 1 B nc 0.3 <------------ B n

我有一个如下所示的数据帧:

  COLA       COLB     COLC
    A         nb       1
    A         nc       0.8
    A         bc       0.7
    A         nb       0.7  <------------
    B         nb       1
    B         nc       0.3  <------------
    B         nc       0.8
    B         aa       0.9

我们可以使用
dplyr
。在
排列
并向下排列“COLA”和“COLC”之后,我们按“COLA”、“COLB”分组,并使用
切片
获得第一行

library(dplyr)
df1 %>%
   arrange(COLA, desc(COLC)) %>% 
   group_by(COLA, COLB) %>% 
   slice(1L) 

除了重复标记中的一个外,基本R方法是
df1[!duplicated(df1[c(1,3)],]
另一个可能的重复:在删除重复之前,如何从COLA和COLB中的重复行的c列中提取最大值,以便删除正确的行?@akrun
library(dplyr)
df1 %>%
   arrange(COLA, desc(COLC)) %>% 
   group_by(COLA, COLB) %>% 
   slice(1L)