我想使用networkx
从二分图中提取连接的组件(作为二分图)。但是networkx
中的连通分量不适用于二部图,而不能用于一般无向图和直接图。有二部图的示例吗?谢谢。
fankangkangkang 回答:二部图的连通分量
与二部图(以及实际上任何图)的连接组件相对应的子图本身继承了所有节点属性,因此,特别地,您可以使用这些子图来标记分区,如the docs:>
In [28]: B = nx.Graph()
...: B.add_nodes_from([1,2,3,4],bipartite=0)
...: B.add_nodes_from(['a','b','c'],bipartite=1)
...: B.add_edges_from([(1,'a'),(1,'b'),(2,(3,'c'),(4,'c')])
...:
...: G = B.subgraph(next(nx.connected_components(B)))
In [30]: G.nodes
Out[30]: NodeView((1,'a','b'))
In [31]: G.nodes[1]
Out[31]: {'bipartite': 0}