删除基于 2 列的重复值 [英] remove duplicate values based on 2 columns

查看:18
本文介绍了删除基于 2 列的重复值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想根据数据框中 2 列中的匹配项删除重复值,v2 &v4 必须在要删除的行之间匹配.

I want to remove duplicate values based upon matches in 2 columns in a dataframe, v2 & v4 must match between rows to be removed.

> df

   v1  v2  v3   v4  v5
1  7   1   A  100  98 
2  7   2   A  100  97
3  8   1   C   NA  80
4  8   1   C   78  75
5  8   1   C   78  62
6  9   3   C   75  75

结果

> df

   v1  v2  v3   v4  v5
1  7   1   A  100  98 
2  8   1   C   NA  80
3  8   1   C   78  75
4  9   3   C   75  75

我知道我想要类似的东西:

I know I want something like:

df[!duplicated(df[v2] && df[v4]),] 

但这不起作用.

这个问题专门针对数据框,对于那些有 data.table 的人,请参阅 过滤掉data.table中重复/不唯一的行.

This question is specifically about dataframes, for those who have a data.table, see Filtering out duplicated/non-unique rows in data.table.

推荐答案

这会给你想要的结果:

df [!duplicated(df[c(1,4)]),]

这篇关于删除基于 2 列的重复值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆