当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX degree_mixing_matrix用法及代码示例


本文简要介绍 networkx.algorithms.assortativity.degree_mixing_matrix 的用法。

用法:

degree_mixing_matrix(G, x='out', y='in', weight=None, nodes=None, normalized=True, mapping=None)

返回属性的混合矩阵。

参数

G图形

NetworkX 图形对象。

x: string (‘in’,’out’)

源节点的度数类型(仅限有向图)。

y: string (‘in’,’out’)

目标节点的度数类型(仅限有向图)。

nodes: list or iterable (optional)

仅使用容器中的节点构建矩阵。默认为所有节点。

weight: string or None, optional (default=None)

保存用作权重的数值的边属性。如果没有,则每条边的权重为 1。度数是与节点相邻的边权重的总和。

normalized布尔(默认=真)

如果为 False,则返回计数,如果为 True,则返回概率。

mapping字典,可选

从节点度映射到矩阵中的整数索引。如果未指定,将使用任意顺序。

返回

m: numpy 数组

节点度数发生的计数或联合概率。

注意

度数混合矩阵的定义因矩阵是否应包含未出现的度数值的行而异。这里我们不包括这样的empty-rows。但是您可以通过输入包含这些值的mapping 来强制它们出现。请参阅示例。

例子

>>> G = nx.star_graph(3)
>>> mix_mat = nx.degree_mixing_matrix(G)
>>> mix_mat[0, 1]  # mixing from node degree 1 to node degree 3
0.5

如果您希望每个可能的度数都显示为一行,即使没有节点具有该度数,请使用mapping,如下所示,

>>> max_degree = max(deg for n, deg in G.degree)
>>> mapping = {x: x for x in range(max_degree + 1)} # identity mapping
>>> mix_mat = nx.degree_mixing_matrix(G, mapping=mapping)
>>> mix_mat[3, 1]  # mixing from node degree 3 to node degree 1
0.5

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.assortativity.degree_mixing_matrix。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。