1
我正在使用函數「刪除頂點」,並在我的網絡上發現了一個奇怪的行爲。 在閱讀igraph的文檔後,我發現:刪除頂點,同時保留節點ID
「delete.vertices從圖中刪除指定的頂點及其相鄰邊,頂點的ID不保留。
是否有任何解決方法來保留原始網絡的ID?
我正在使用函數「刪除頂點」,並在我的網絡上發現了一個奇怪的行爲。 在閱讀igraph的文檔後,我發現:刪除頂點,同時保留節點ID
「delete.vertices從圖中刪除指定的頂點及其相鄰邊,頂點的ID不保留。
是否有任何解決方法來保留原始網絡的ID?
是的,給圖分配一個頂點屬性,可能name
屬性是最好的。這些在刪除後保留。
g <- graph.ring(10)
V(g)$name <- letters[1:10]
g2 <- delete.vertices(g, c("a", "b", "f"))
str(g2)
# IGRAPH UN-- 7 5 -- Ring graph
# + attr: name (g/c), mutual (g/l), circular (g/l), name (v/c)
# + edges (vertex names):
# [1] c--d d--e g--h h--i i--j
如果你想保留原來的數字頂點的ID,然後將它們分配爲名稱:
gg <- graph.ring(10)
V(gg)$name <- V(gg)
gg2 <- delete.vertices(gg, c(1,2,6))
str(gg2)
# IGRAPH UN-- 7 5 -- Ring graph
# + attr: name (g/c), mutual (g/l), circular (g/l), name (v/n)
# + edges (vertex names):
# [1] 3-- 4 4-- 5 7-- 8 8-- 9 9--10
謝謝您的回答。 我原來的圖是一個邊列表與形式: 1,2 2,10 1.15 .... 我想繼續提供該名單即數字:1,10,2, 15 不是新的命名或新的編號 –
然後將這些編號指定爲'name'屬性中的頂點名稱。 –
是否可以將原始節點編號指定爲該節點的名稱。我關心圖表的原始ID。 IOW,如果我有一個邊緣「1 - > 2」,那麼節點「1」應該有一個名字「1」,節點「2」應該有一個名字「2」 –