R语言——根据某一列的重复值,去除该重复值所在的整行

> x
 [1]  3  4  5 11 10  9  8  8  9 10 11 12 13
> duplicated(x)  #判定重复元素,返回逻辑值
 [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE  TRUE  TRUE FALSE FALSE

> df #第2行于第4行是相同的,第1行和第3行只有exp相同
   gene     sam exp
1 gene1 sample1  32
2 gene2 sample2  45
3 gene3 sample3  32
4 gene2 sample2  45
> duplicated(df)
[1] FALSE FALSE FALSE  TRUE #第4行是重复值

duplicated()去重使用

#duplicated可以放在[]中,因为是逻辑值
> xu <- x[!duplicated(x)]
> xu
[1]  3  4  5 11 10  9  8 12 13
# 与unique结果是一样的

# 数据框的去重使用
> dfu <- df[!duplicated(df),]
> dfu
   gene     sam exp
1 gene1 sample1  32
2 gene2 sample2  45
3 gene3 sample3  32
posted @ 2021-03-07 01:18  我只鹅  阅读(4281)  评论(0)    收藏  举报