我想知道使用 igraph for python 读取断开的无向图的最佳方法。例如,如果我有一个简单的图形,其中 0 链接到 1,而 2 是一个未连接到任何其他节点的节点。我无法让 igraph 从边缘列表格式(Graph.Read_Edgelist(...))读取它,因为每一行都必须是边缘,所以不允许以下内容:
0 1
2
我一直想知道在这种情况下邻接矩阵是否是我唯一/最好的选择(我可以通过这种表示法让它工作)?我更喜欢一种我可以通过查看数据来理解数据的格式(当涉及到矩阵格式时,这真的很难)。
提前致谢!
最佳答案
有允许孤立顶点的 LGL 格式(参见 Graph.Read_LGL
)。格式如下所示:
# nodeID
nodeID2
nodeID3
# nodeID2
nodeID4
nodeID5
nodeID
# isolatedNode
# nodeID5
我想你已经明白了基本的想法;以哈希标记开头的行表示正在定义一个新节点。此后,这些行指定了刚刚定义的节点的邻居。如果您需要一个孤立的节点,您只需在行中指定以哈希标记为前缀的节点 ID,然后继续下一个节点。
可以找到有关 LGL 格式的更多信息 here .
您可能想要检查的另一种相当易读的格式是 GML format igraph 也支持。
关于python - 阅读 igraph 中的 Disconected Graph for python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6780500/