跳到内容

alpha_centrality() 计算图中一些(或所有)顶点的 alpha 中心性。

用法

alpha_centrality(
  graph,
  nodes = V(graph),
  alpha = 1,
  loops = FALSE,
  exo = 1,
  weights = NULL,
  tol = 1e-07,
  sparse = TRUE
)

参数

graph

输入图,可以是有向图或无向图。在无向图中,边被视为互反的有向边。

节点

顶点序列,返回其 alpha 中心性值的顶点。(由于技术原因,无论如何都会计算所有顶点的 alpha 中心性值。)

alpha

参数,用于指定内生因素相对于外生因素在决定中心性方面的重要性。请参阅以下详细信息。

loops

在计算之前是否从图中删除环边。

exo

外生因素,在大多数情况下,这要么是一个常数——每个节点的因子相同,要么是一个向量,给出每个顶点的因子。请注意,太长的向量将被截断,太短的向量将被复制以匹配顶点的数量。

weights

一个字符标量,给出要在邻接矩阵中使用的边的属性的名称。如果为 NULL,则使用图的“weight”边属性(如果存在)。否则,如果为 NA,则计算使用标准邻接矩阵。

tol

矩阵求逆期间接近奇异性的容差,请参阅 solve()

sparse

逻辑标量,是否使用稀疏矩阵进行计算。稀疏矩阵支持需要“Matrix”包

一个数值向量,包含所选顶点的中心性得分。

详细信息

Alpha 中心性度量可以被认为是特征向量中心性对有向图的推广。Bonacich 在 2001 年提出了该度量(请参阅下面的参考文献)。

图中顶点的 alpha 中心性定义为以下矩阵方程的解:$$x=\alpha A^T x+e,$$ 其中 \(A\) 是图的(不一定是对称的)邻接矩阵,\(e\) 是顶点的状态外生来源向量,\(\alpha\) 是内生因素相对于外生因素的相对重要性。

警告

奇异邻接矩阵会给该算法带来问题,在某些情况下,该例程可能会失败。

参考文献

Bonacich, P. and Lloyd, P. (2001). “Eigenvector-like measures of centrality for asymmetric relations” Social Networks, 23, 191-201.

作者

Gabor Csardi csardi.gabor@gmail.com

示例


# The examples from Bonacich's paper
g.1 <- make_graph(c(1, 3, 2, 3, 3, 4, 4, 5))
g.2 <- make_graph(c(2, 1, 3, 1, 4, 1, 5, 1))
g.3 <- make_graph(c(1, 2, 2, 3, 3, 4, 4, 1, 5, 1))
alpha_centrality(g.1)
#> [1] 1 1 3 4 5
alpha_centrality(g.2)
#> [1] 5 1 1 1 1
alpha_centrality(g.3, alpha = 0.5)
#> [1] 2.533333 2.266667 2.133333 2.066667 1.000000