【问题标题】:Filter rows having duplicate IDs [duplicate]过滤具有重复 ID 的行 [重复]
【发布时间】:2015-04-20 06:17:41
【问题描述】:

我的数据是这样的:

dat <- read.table(header=TRUE, text="
                 ID  Veh oct nov dec jan feb
1120    1   7   47  152 259 140
2000    1   5   88  236 251 145
2000    2   14  72  263 331 147
1133    1   6   71  207 290 242
2000    3   7   47  152 259 140
2002    1   5   88  236 251 145
2006    1   14  72  263 331 147
2002    2   6   71  207 290 242
")

dat
    ID Veh oct nov dec jan feb
1 1120   1   7  47 152 259 140
2 2000   1   5  88 236 251 145
3 2000   2  14  72 263 331 147
4 1133   1   6  71 207 290 242
5 2000   3   7  47 152 259 140
6 2002   1   5  88 236 251 145
7 2006   1  14  72 263 331 147
8 2002   2   6  71 207 290 242

通过使用duplicated函数:

第 1 列中的唯一单元格

dat[!duplicated(dat[,1]),]

    ID Veh oct nov dec jan feb
1 1120   1   7  47 152 259 140
2 2000   1   5  88 236 251 145
4 1133   1   6  71 207 290 242
6 2002   1   5  88 236 251 145
7 2006   1  14  72 263 331 147

第 1 列中的单元格重复

dat[duplicated(dat[,1]),]
    ID Veh oct nov dec jan feb
3 2000   2  14  72 263 331 147
5 2000   3   7  47 152 259 140
8 2002   2   6  71 207 290 242

但我想保留first row 的行,如下所示(我正在努力编写代码):

ID    Veh  oct  nov dec jan feb
2000    1   5   88  236 251 145
2000    2   14  72  263 331 147
2000    3   7   47  152 259 140
2002    1   5   88  236 251 145
2002    2   6   71  207 290 242

【问题讨论】:

  • 我认为您对first unique case 的描述令人困惑。
  • dat %&gt;% group_by(ID) %&gt;% filter(n()&gt;1)
  • @akrun,我稍微改变了标题。如果您可以更好地标题,请随时编辑。
  • 我把标题改了一点,请检查是否对你有意义。

标签: r duplicates


【解决方案1】:

试试

dat[duplicated(dat[,1])|duplicated(dat[,1],fromLast=TRUE),]
#    ID Veh oct nov dec jan feb
#2 2000   1   5  88 236 251 145
#3 2000   2  14  72 263 331 147
#5 2000   3   7  47 152 259 140
#6 2002   1   5  88 236 251 145
#8 2002   2   6  71 207 290 242

或者

library(data.table)
setDT(dat)[, .SD[.N>1], ID]

【讨论】:

    猜你喜欢
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    • 1970-01-01
    • 2011-06-29
    • 1970-01-01
    • 2013-05-06
    相关资源
    最近更新 更多