alpha.centrality {igraph} | R Documentation |
alpha.centrality
calculates the alpha centrality of
some (or all) vertices in a graph.
alpha.centrality(graph, nodes=V(graph), alpha=1, loops=FALSE, exo=1, weights=NULL, tol=1e-7)
graph |
The input graph, can be directed or undirected |
nodes |
Vertex sequence, the vertices for which the alpha centrality values are returned. (For technical reasons they will be calculated for all vertices first, anyway.) |
alpha |
Parameter specifying the relative importance of endogenous versus exogenous factors in the determination of centrality. See details below. |
loops |
Whether to eliminate loop edges from the graph before the calculation. |
exo |
The exogenous factors, in most cases this is either a constant – the same factor for every node, or a vector giving the factor for every vertex. Note that long vectors will be truncated and short vectors will be replicated. |
weights |
Optional positive weight vector for calculating
weighted closeness. If the graph has a weight edge
attribute, then this is used by default. |
tol |
Tolerance for near-singularities during matrix inversion,
see solve . |
The alpha centrality measure can be considered as a generalization of eigenvector centerality to directed graphs. It was proposed by Bonacich in 2001 (see reference below).
The alpha centrality of the vertices in a graph is defined as the solution of the following matrix equation:
x=alpha t(A)x+e,
where A is the (not neccessarily symmetric) adjacency matrix of the graph, e is the vector of exogenous sources of status of the vertices and alpha is the relative importance of the endogenous versus exogenous factors.
A numeric vector contaning the centrality scores for the selected vertices.
Singular adjacency matrices cause problems for this algorithm, the routine may fail is certain cases.
Gabor Csardi csardi@rmki.kfki.hu.
Bonacich, P. and Paulette, L. (2001). ``Eigenvector-like measures of centrality for asymmetric relations'' Social Networks, 23, 191-201.
# The examples from Bonacich's paper g.1 <- graph( c(1,3,2,3,3,4,4,5)-1 ) g.2 <- graph( c(2,1,3,1,4,1,5,1)-1 ) g.3 <- graph( c(1,2,2,3,3,4,4,1,5,1)-1 ) alpha.centrality(g.1) alpha.centrality(g.2) alpha.centrality(g.3,alpha=0.5)