R 通过指定端点删除边

R 通过指定端点删除边,r,igraph,R,Igraph,如何通过命名边的端点从图形中删除边 delete_edges需要边编号,我不清楚端点和边编号之间的映射 library(igraph) g = make_ring(10) 假设我想删除节点7和8以及节点9和10之间的顶点 一种不切实际的做法是: g = delete_edges(g, c(7, 9)) 但我必须仔细检查E(g)的输出,然后才能确定这些边的编号是7和9 我试图寻找print方法如何将节点映射分配给E(g),但它看起来就像兔子洞一样。看起来您可以使用字符串参数来实现这一点——请参

如何通过命名边的端点从图形中删除边

delete_edges
需要边编号,我不清楚端点和边编号之间的映射

library(igraph)
g = make_ring(10)
假设我想删除节点7和8以及节点9和10之间的顶点

一种不切实际的做法是:

g = delete_edges(g, c(7, 9))
但我必须仔细检查
E(g)
的输出,然后才能确定这些边的编号是7和9


我试图寻找
print
方法如何将节点映射分配给
E(g)
,但它看起来就像兔子洞一样。

看起来您可以使用字符串参数来实现这一点——请参见
?delete_edges
中的第二个示例

g = delete_edges(g, c("7|8", "9|10"))
g
# IGRAPH U--- 10 8 -- Ring graph
# + attr: name (g/c), mutual (g/l), circular (g/l)
# + edges:
# [1] 1-- 2 2-- 3 3-- 4 4-- 5 5-- 6 6-- 7 8-- 9 1--10

显然
c(“7 | 8”,“9 | 10”)
也算作
edges
参数中描述的“边缘序列”。

Hmm谢谢。不知何故,在
中忽略了这一点?删除\u边
。而
igraph:::print.igraph.es
的工作方式对我来说仍然是个谜。有点痛苦,
add_-edges
delete_-edges
没有并行接口…什么是并行接口?就像相同风格的输入适用于加法和减法。你删除了你的答案;我想问是否有相应的
+
方法?@GaborCsardi不知道你为什么删除了你的答案?