【发布时间】:2016-05-10 11:45:40
【问题描述】:
我有以下示例:
Id = c(1, 1, 2, 2, 2, 1, 4, 3, 3, 3)
long = c("60.466681", "60.664116", "60.766690", "60.86879", "60.986569","60.466681", "60.664116", "60.766690", "60.86879", "60.986569" )
data = data.frame(Id, long)
我想删除因子Id 的级别在data.frame 中仅出现一次的行。例如在这里,我将删除带有Id == 4 的行并保留其他行。
我试过了:
data$duplicated <- duplicated(data$Id)
subset(data, data$duplicated == "FALSE")
但是当每个因素第一次出现时,这也会删除该行
时间(即Id=1 或Id=2 的第一行)
Id long duplicated
1 1 60.466681 FALSE
2 1 60.664116 TRUE
3 2 60.766690 FALSE
4 2 60.86879 TRUE
5 2 60.986569 TRUE
6 1 60.466681 TRUE
有没有简单的方法可以做到这一点?
【问题讨论】:
-
试试
gdata::duplicated2