python节点平均度_【Python】networkx关于网络分析的几个指标

本文介绍了如何使用Python的networkx库分析网络,包括读取网络、计算节点的度、聚类系数、中心性等指标,并展示了平均聚类系数、网络传递性、直径和最短路径长度的计算方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(1)读取网络

def load_graph(file_path):

with open(file_path, "r") as fd:

data = fd.readlines()

# 分离出标题和数据行,如果没有标题,用#号注释掉下面这两行)

title = data[0]

data = data[1:]

# 从数据中提取边,建立一个空的有向图G

edges = [it.strip().strip(",").split(",")[:2] for it in data]

G = nx.DiGraph()

G.add_edges_from(edges)

return G

(2)各种指标

nx.degree(G)           # 计算图的密度,其值为边数m除以图中可能边数(即n(n-1)/2)

nx.clustering(G)       # 网络节点的聚类系数。计算公式为:节点u的两个邻居节点间的边数除以((d(u)(d(u)-1)/2)。

nx.degree_centrality(G)    # 节点度中心系数。通过节点的度表示节点在图中的重要性,默认情况下会进行归一化,其值表达为节点度d(u)除以n-1(其中n-1就是归一化使用的常量)。这里由于可能存在循环,所以该值可能大于1.

nx.closeness_centrality(G)     # 节点距离中心系数。通过距离来表示节点在图中的重要性,一般是指节点到其他节点的平均路径的倒数,这里还乘以了n-1。该值越大表示节点到其他节点的距离越近,即中心性越高。

nx.betweenness_central

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值