如何从数据框中删除重复的行
Area Population
GOMBAK 668,694
GOMBAK 668,694
GOMBAK 668,694
Batu 285,288
Batu 285,288
KLANG 842,146
KLANG 842,146
是
GOMBAK 668,694
Batu 285,288
KLANG 842,14
答案 0 :(得分:2)
尝试使用duplicated()
功能:
df <- data.frame(Area=c("GOMBAK", "GOMBAK", "GOMBAK", "Batu", "Batu", "KLANG", "KLANG"),
Population=c(668694, 668694, 668694, 285288, 285288, 842146, 842146))
df <- df[!duplicated(df), ]
> df
Area Population
1 GOMBAK 668694
4 Batu 285288
6 KLANG 842146
如果要计算总体的总和,则以下内容应该有效:
sum(as.numeric(levels(df$Population)))
有必要使用levels
,因为您的人口列是factor
,基于您在评论中提到的内容。
答案 1 :(得分:0)
sqldf('SELECT DISTINCT * FROM df')
答案 2 :(得分:0)
使用dplyr
:
library(dplyr)
df %>% distinct