离散度#

dispersion(G, u=None, v=None, normalized=True, alpha=1.0, b=0.0, c=0.0)[source]#

计算图 G 中节点 uv 之间的离散度。

当两个行为者(uv)之间的共同联系(st)彼此之间连接不紧密时,它们之间的链接具有高离散度。

参数:
G

一个 NetworkX 图。

u节点,可选

离散度分数的源节点(例如,网络的自我中心节点)。

v节点,可选

如果指定,则为离散度分数的目的节点。

normalized布尔值

如果为 True(默认值),则按节点(u 和 v)的嵌入度进行归一化。

alpha, b, c浮点数

归一化过程的参数。当 normalized 为 True 时,离散度值通过以下公式进行归一化:

result = ((dispersion + b) ** alpha) / (embeddedness + c)

只要分母不为零。

返回:
nodes字典

如果指定了 u(或 v),则返回一个字典,其中包含所有“目标”(或“源”)节点的离散度分数。如果既未指定 u 也未指定 v,则返回一个包含图中所有节点“u”的字典的字典,其中包含每个节点“v”的离散度分数。

注意

此实现遵循 Lars Backstrom 和 Jon Kleinberg [1] 的方法。如果指定了 \(u\),典型用法是在自我中心网络 \(G_u\) 上运行离散度计算。在既未指定 \(u\) 也未指定 \(v\) 的情况下运行 dispersion() 可能需要一些时间才能完成。

参考文献

[1]

Romantic Partnerships and the Dispersion of Social Ties: A Network Analysis of Relationship Status on Facebook. Lars Backstrom, Jon Kleinberg. https://arxiv.org/pdf/1310.6753v1.pdf