查找已删除的唯一对的索引

伊利亚·L。

我有2列的数据帧和相同长度的向量。我正在尝试删除数据框中的所有重复对,并在同一索引处将其从向量中删除。

我有一个数据框:

> from <- c(1,1,2,4,3)
> to <- c(1,1,2,3,5)
> ft <- data.frame(from,to)
> ft
 from to
1    1  1
2    1  1
3    2  2
4    4  3
5    3  5

和向量:

> dist <- c(1,2,3,4,5)
> dist
[1] 1 2 3 4 5

我使用该函数unique()删除了所有重复的对:

> unique(ft)
  from to
1    1  1
3    2  2
4    4  3
5    3  5

如何获取“ ft”中每对的索引已被删除,以便可以从“ dist”中将其删除(在这种情况下为2)。

gung-恢复莫妮卡

如@eddi所述,您可以获得一个逻辑向量,该逻辑向量指示哪些行与重复duplicated()我将其与结合起来,which()返回与逻辑关联的数字TRUE(即重复的行)。然后,您可以通过使用在对象的下标中不包括指示的行来创建一个新的data.framevector等)-

编辑:在注释中,@DWin指出了比使用更好的方法-如果我们使用否定duplicated()函数!,我们将得到一个向量,可用于确定保留哪些行

> from <- c(1,1,2,4,3)
> to <- c(1,1,2,3,5)
> ft <- data.frame(from,to)
> ft
  from to
1    1  1
2    1  1
3    2  2
4    4  3
5    3  5
> dist <- c(1,2,3,4,5)
> dist
[1] 1 2 3 4 5
> remove <- !duplicated(ft)
> remove
[1]  TRUE FALSE  TRUE  TRUE  TRUE
> ft.new <- ft[which(remove), ]
> ft.new
  from to
1    1  1
3    2  2
4    4  3
5    3  5
> dist.new <- dist[which(remove)]
> dist.new
[1] 1 3 4 5

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在表格中查找唯一对

来自分类Dev

在数组中查找唯一对

来自分类Dev

查找每个日期列之间的唯一对计数

来自分类Dev

删除唯一索引Laravel 5

来自分类Dev

Mongoose / mongoDB删除唯一索引约束

来自分类Dev

唯一/主键的执行-删除索引

来自分类Dev

通过并发删除维护名称的唯一对象

来自分类Dev

为什么删除主键不会删除其唯一索引?

来自分类Dev

原则可为空的一对一关系仍要创建唯一索引

来自分类Dev

查找3维NumPy数组的唯一值的索引

来自分类Dev

在R中查找唯一元素的索引

来自分类Dev

查找 numpy.where 返回的数组之间的唯一索引

来自分类Dev

触发唯一对约束

来自分类Dev

从具有非唯一索引的pandas DataFrame删除行

来自分类Dev

删除具有唯一索引的重复项

来自分类Dev

删除数组php上的唯一索引

来自分类Dev

在PostgreSQL中删除索引的唯一性

来自分类Dev

Java 8 Stream API查找与属性值匹配的唯一对象

来自分类Dev

javascript-根据多个属性在数组中查找唯一对象

来自分类Dev

Rails has_and_belongs_to_many查找共同的唯一对象

来自分类Dev

查找向量中唯一元素的最后一次出现的索引

来自分类Dev

查找向量中唯一元素的最后一次出现的索引

来自分类Dev

在具有非数字项的非唯一数组中查找唯一数组的索引

来自分类Dev

保留已删除列的索引

来自分类Dev

如何创建唯一对象?

来自分类Dev

Scala从列表中生成唯一对

来自分类Dev

Python嵌套循环唯一对

来自分类Dev

R中的唯一对,忽略顺序

来自分类Dev

算法-以唯一对分组列表