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


Python NetworkX effective_size用法及代码示例


本文简要介绍 networkx.algorithms.structuralholes.effective_size 的用法。

用法:

effective_size(G, nodes=None, weight=None)

返回图中所有节点的有效大小 G

节点自我网络的effective size基于冗余的概念。一个人的自我网络具有冗余性,因为她的联系人也相互连接。一个人的关系中非冗余的部分是她的自我网络的有效规模[1]。形式上,节点 的有效大小(表示为 )定义为

其中 的邻居集,而 是连接 的(有向或无向)边的归一化相互权重,对于每个顶点 [ 1]。 的相互权重除以 与其任何邻居的最高相互权重。 mutual weight 是连接它们的边的权重之和(如果图未加权,则假定边权重为 1)。

对于无权无向图的情况,Borgatti 提出了一个简化的公式来计算有效尺寸 [2]

其中t是自我网络中的联系数(不包括与自我的联系),n是节点数(不包括自我)。

参数

GNetworkX 图

包含 v 的图表。在计算 v 的邻居时,有向图被视为无向图。

nodes容器,可选

G 中的节点容器,用于计算有效大小。如果没有,则计算每个节点的有效大小。

weight无或字符串,可选

如果没有,所有的边权重都被认为是相等的。否则保存用作权重的边属性的名称。

返回

dict

以节点为键,以节点的有效大小为值的字典。

注意

Burt还定义了节点自我网络efficiency的相关概念,即节点的有效大小除以该节点的度数[1]。因此您可以轻松计算效率:

>>> G = nx.DiGraph()
>>> G.add_edges_from([(0, 1), (0, 2), (1, 0), (2, 1)])
>>> esize = nx.effective_size(G)
>>> efficiency = {n: v / G.degree(n) for n, v in esize.items()}

参考

1(1,2,3)

Burt, Ronald S. Structural Holes: The Social Structure of Competition. Cambridge: Harvard University Press, 1995.

2

Borgatti, S. “Structural Holes: Unpacking Burt’s Redundancy Measures” CONNECTIONS 20(1):35-38. http://www.analytictech.com/connections/v20(1)/holes.htm

相关用法


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