我想知道使用I graph for python读取断开的无向图的最佳方法。例如,如果我有一个简单的图,其中0链接到1,而2是一个未连接到任何其他节点的节点。我无法让I Graph从edgelist格式(Graph.read_edgelist(…))读取它,因为每一行都必须是一条边,因此不允许执行以下操作:

0 1
2

我一直在想邻接矩阵是否是我在这种情况下唯一/最好的选择(我可以让它通过这个表示来工作)?我更喜欢一种通过查看数据来理解数据的格式(对于矩阵格式来说,这是非常困难的)。
提前谢谢!

最佳答案

LGL格式允许独立的顶点(参见Graph.Read_LGL)。格式如下:

# nodeID
nodeID2
nodeID3
# nodeID2
nodeID4
nodeID5
nodeID
# isolatedNode
# nodeID5

我想您已经了解了基本思想;以哈希标记开头的行表示正在定义一个新节点。之后,这些行指定刚刚定义的节点的邻居。如果需要一个独立的节点,只需在行中指定由哈希标记前置的节点ID,然后继续下一个节点。
有关LGL格式的更多信息,请参见here
另一种可读性很强的格式是igraph也支持的GML format

10-08 15:05