R语言数据去重

R语言常用的去重命令有unique duplicated

 

unique主要是返回一个把重复元素或行给删除的向量、数据框或数组

> x <- c(3:5, 11:8, 8 + 0:5)
> x
 [1]  3  4  5 11 10  9  8  8  9 10 11 12 13
> unique(x)
[1]  3  4  5 11 10  9  8 12 13
> unique(x, fromLast = TRUE)
[1]  3  4  5  8  9 10 11 12 13    #排序后的

> a
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    1    2    4
[3,]    1    3    5
[4,]    1    2    3

> unique(a)
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    1    2    4
[3,]    1    3    5   #去除重复的最后一行

 

duplicated主要是判定向量或数据框中的元素是否重复,它返回一个元素(行)是不是重复的逻辑向量

> duplicated(a)
[1] FALSE FALSE FALSE  TRUE    # 返回一个是否重复的逻辑判断

> a[!duplicated(a),]
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    1    2    4
[3,]    1    3    5                         #去除重复的最后一行

 

如果把第二列有重复的去除,则需要加一个索引

> index <- duplicated(a[,2])
> index
[1] FALSE  TRUE FALSE  TRUE
> a[!index,]
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    1    3    5       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值