首页 > 解决方案 > 在 igraph 中合并或组合顶点

问题描述

我在 igraph 文件中有一个重复节点(顶点)的列表,我想在保持连接的同时进行统一。在我的示例中,我列出了一位作者:

R, 2000-1
R, 2000-2
J, 1999-1
J, 1999-2
J, 1999-3

它必须是一个单一的作者,比如

R, 2000
J, 1999

我整天都在寻找解决方案,但我无法以简单的方式做到这一点。我也尝试从 igraph 转到 csv 并再次返回 igraph,但是这个选项给我带来了问题(我失去了边缘之间的一些连接)。

标签: rigraph

解决方案


我认为你不需要igraph。您可以尝试以下基本 R 代码

unique(
  transform(
    df,
    V2 = gsub("-\\d+", "", V2)
  )
)

这使

  V1   V2
1  R 2000
3  J 1999

数据

> dput(df)
structure(list(V1 = c("R", "R", "J", "J", "J"), V2 = c("2000-1",
"2000-2", "1999-1", "1999-2", "1999-3")), class = "data.frame", row.names = c(NA,
-5L))

推荐阅读