根据 R 列中的重复项删除行

Removing rows based on Duplicates within Column R

我有一个数据框,其中包含由申请号 "Apno" 标识的条目。数据框中有许多重复项,其中大部分信息相同,但一两部分略有不同,使得直接的 unique() 命令不适用于我的目的。好处是具有相同 Apno 值的行指的是同一事物,保留哪个条目并不重要。在保留其他数据的同时,我只需要唯一的 apno。示例:

Apno  Name   Location

123   Gary   New York
124   Larry  Boston
123   Garry  NYC
155   Jerry  San Francisco
122   Mary   Chicago
123   Gari   NY
124   Lary   Bos. 

过滤 Apno 后:

Apno  Name   Location

123   Gary   New York
124   Larry  Boston
155   Jerry  San Francisco
122   Mary   Chicago

尝试

library(dplyr)
df1 %>% 
    group_by(Apno) %>%
    slice(1L)

或者 base R 选项是

df1[!duplicated(df1$Apno),]

数据

df1 <- structure(list(Apno = c(123L, 124L, 123L, 155L, 122L, 123L, 124L
 ), Name = c("Gary", "Larry", "Garry", "Jerry", "Mary", "Gari", 
"Lary"), Location = c("New York", "Boston", "NYC", "San Francisco", 
"Chicago", "NY", "Bos.")), .Names = c("Apno", "Name", "Location"
), class = "data.frame", row.names = c(NA, -7L))