6
我在想,函数Read_Edgelist从边缘列表中存储原始ID的位置在哪里?或根据哪个属性名称?从边缘列表创建图形时的初始节点的ID
假设我读的边缘名单,如:在数字1,2,3
是节点的ID(或名称)
1 2
2 1
1 3
。 iGraph(python版本)在哪里存储这些ID? 我试图从属性name
或id
检索这些Id,但它不起作用,因为这两个属性看起来必须明确定义。
我在想,函数Read_Edgelist从边缘列表中存储原始ID的位置在哪里?或根据哪个属性名称?从边缘列表创建图形时的初始节点的ID
假设我读的边缘名单,如:在数字1,2,3
是节点的ID(或名称)
1 2
2 1
1 3
。 iGraph(python版本)在哪里存储这些ID? 我试图从属性name
或id
检索这些Id,但它不起作用,因为这两个属性看起来必须明确定义。
Read_Edgelist
假设节点ids是从0到m的连续整数,其中m是边缘列表中的最大整数。所以“不需要存储节点ID”。
例如,如果你的edgelist.txt是1 3
,此代码
import igraph as ig
g = ig.Graph.Read_Edgelist("edgelist.txt")
print g.get_adjacency()
创建具有四个节点的曲线图(0,1,2,3)和打印
[[0, 0, 0, 0]
[0, 0, 0, 1]
[0, 0, 0, 0]
[0, 0, 0, 0]]
参见本answer如果您不想要创建“中间”节点。
虽然以下是不必要的具有连续节点ID从0开始的曲线图,人们可以使用VertexSeq
Vertex
和访问节点ID:
for v in g.vs:
print v.index # node id
'my_graph.es'应该显示您的曲线图的边序列 –
我试过了,使用'source'和'target'我可以检索节点。但我仍然不知道这些原始ID存储在哪里! –
@ M.M,我编辑了我的答案,以添加有关存储节点ID的信息。 –