有什么一种简单的方法可以修剪网络X图中断开的网络?

本教程将介绍有没有一种简单的方法可以修剪网络X图中断开的网络?的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

有什么一种简单的方法可以修剪网络X图中断开的网络? 教程 第1张

问题描述

我正在使用Python的NetworkX包为不同规模的网络计算一系列网络统计信息。我正在扫描一个独立的参数,该参数系统地修剪边缘,因此有时一个小网络会与主网络断开连接。是否有一种简单的方法来检测和删除NetworkX中那些较小的断开连接的网络?

推荐答案

索林是正确的。该函数在NetworkX中称为connected_component_subgraphs

文档:http://networkx.github.io/documentation/latest/reference/generated/networkx.algorithms.components.connected.connected_component_subgraphs.html#networkx.algorithms.components.connected.connected_component_subgraphs

以下是在NetworkX图中查找最大网络的一些代码:

cur_graph = # whatever graph you're working with

if not nx.is_connected(cur_graph):
 # get a list of unconnected networks
 sub_graphs = nx.connected_component_subgraphs(cur_graph)

 main_graph = sub_graphs[0]

 # find the largest network in that list
 for sg in sub_graphs:
  if len(sg.nodes()) > len(main_graph.nodes()):
main_graph = sg

 cur_graph = main_graph

好了关于有什么一种简单的方法可以修剪网络X图中断开的网络?的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。