centrality {qgraph} | R Documentation |
Centrality statistics of graphs
Description
This function can be used on the output of qgraph
to compute the node centrality statistics for weighted graphs proposed by Opsahl, Agneessens and Skvoretz (2010).
Usage
centrality(graph, alpha = 1, posfun = abs, pkg, all.shortest.paths = FALSE,
weighted = TRUE, signed = TRUE, R2 = FALSE)
Arguments
graph |
A "qgraph" object obtained from |
alpha |
The tuning parameter. Defaults to 1. |
posfun |
A function that converts positive and negative values to only positive. Defaults to the absolute value. |
pkg |
Package to use. Either |
all.shortest.paths |
Logical if all shortest paths should be returned. Defaults to |
weighted |
Logical, set to |
signed |
Logical, set to |
R2 |
Logical, should R-squared (predictability) be computed for GGM structures? |
Details
This function computes and returns the in and out degrees, closeness and betweenness as well as the shortest path lengths and shortest paths between all pairs of nodes in the graph. For more information on these statistics, see Opsahl, Agneessens and Skvoretz (2010).
Self-loops are ignored in computing centrality indices. These statistics are only defined for positive edge weights, and thus negative edge weights need to be transformed into positive edge weights. By default, this is done by taking the absolute value.
The algorithm used for computing the shortest paths is the well known "Dijkstra’s algorithm" (Dijkstra, 1959). The algorithm has been implemented in R, which can make this function take several minutes to run for large graphs (over 100 nodes). A future version of qgraph will include a compiled version to greatly speed up this function.
Value
A list containing:
OutDegree |
A vector containing the outward degree of each node. |
InDegree |
A vector containing the inward degree of each node. |
Closeness |
A vector containing the closeness of each node. |
Betweenness |
A vector containing the betweenness of each node |
InExpectedInfluence |
Expected incoming influence - sum of incomming edge weights connected to a node (not made absolute) |
OutExpectedInfluence |
Expected outgoing influence - sum of outgoing edge weights connected to a node (not made absolute) |
ShortestPathLengths |
A matrix containing the shortest path lengths of each pairs of nodes. These path lenghts are based on the inverse of the absolute edge weights raised to the power alpha. |
ShortestPaths |
A matrix of lists containing all shortest path lengths between all pairs of nodes. Use double square brackets to index. E.g., if the list is called 'res', res$ShortestPaths[[i,j]] gives a list containing all shortest paths between node i and j. |
Author(s)
Sacha Epskamp (mail@sachaepskamp.com)
References
Opsahl, T., Agneessens, F., Skvoretz, J. (2010). Node centrality in weighted networks: generalizing degree and shortest paths. Soc Netw. 32:245–251.
Dijkstra, E.W. (1959). A note on two problems in connexion with graphs. Numerische Mathematik 1, 269–271.
See Also
Examples
set.seed(1)
adj <- matrix(sample(0:1,10^2,TRUE,prob=c(0.8,0.2)),nrow=10,ncol=10)
Q <- qgraph(adj)
centrality(Q)