【发布时间】:2015-07-03 14:48:56
【问题描述】:
我有一个包含两列的日期框架。我想删除第一列中有重复条目的行。但是我想根据第二列的值选择要保留的特定行。
具体来说 - 如果第 1 列中有 2 个重复条目,我希望删除第 2 列中具有较低值的行
或者,如果第 1 列中有超过 2 个相同的条目,那么我希望保留第 2 行中具有中值的行。
所以对于数据框
a <- c(rep("A", 3), rep("B", 3), rep("C",1), rep("D",1), rep("D",1))
b <- c(1,2,3,4,5,6,4,7,6)
df <-data.frame(a,b)
会变成
a <- c(rep("A", 1), rep("B", 1), rep("C",1), rep("D",1))
b <- c(2,5,4,7)
df <-data.frame(a,b)
我已经尝试过 unique() 和 duplicated() 函数,但似乎找不到符合这些条件的参数。非常感谢任何帮助。
【问题讨论】:
-
对于base R,你也可以看看
?aggregate。
标签: r