【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

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值