Learn R Programming

sna (version 0.41)

closeness: Compute the Closeness Centrality Scores of Network Positions

Description

closeness takes a graph stack (dat) and returns the closeness centralities of positions within one graph (indicated by nodes and g, respectively). Depending on the specified mode, closeness on directed or undirected geodesics will be returned; this function is compatible with centralization, and will return the theoretical maximum absolute deviation (from maximum) conditional on size (which is used by centralization to normalize the observed centralization score).

Usage

closeness(dat, g=1, nodes=c(1:dim(dat)[2]), gmode="digraph", 
    diag=FALSE, tmaxdev=FALSE, cmode="directed", 
    geodist.precomp=NULL, rescale=FALSE)

Arguments

dat
Data array to be analyzed. By assumption, the first dimension of the array indexes the graph, with the next two indexing the actors. Alternately, this can be an n x n matrix (if only one graph is involved).
g
Integer indicating the index of the graph for which centralities are to be calculated. By default, g=1.
nodes
List indicating which nodes are to be included in the calculation. By default, all nodes are included.
gmode
String indicating the type of graph being evaluated. "digraph" indicates that edges should be interpreted as directed; "graph" indicates that edges are undirected. gmode is set to "digraph" by default.
diag
Boolean indicating whether or not the diagonal should be treated as valid data. Set this true if and only if the data can contain loops. diag is FALSE by default.
tmaxdev
Boolean indicating whether or not the theoretical maximum absolute deviation from the maximum nodal centrality should be returned. By default, tmaxdev==FALSE.
cmode
String indicating the type of closeness centrality being computed (distances on directed or undirected geodesics).
geodist.precomp
A geodist object precomputed for the graph to be analyzed (optional)
rescale
If true, centrality scores are rescaled such that they sum to 1.

Value

  • A vector containing the closeness scores.

Details

The closeness of a vertex v is defined as

$$C_C(v) = \frac{\left|V\left(G\right)\right|-1}{\sum_{i : i \neq v} d(v,i)}$$

where $d(i,j)$ is the geodesic distance between i and j (where defined). Closeness is ill-defined on disconnected graphs; in such cases, this routine substitutes a number one greater than the maximum path length (i.e., |V(G)|) for the geodesic distance). It should be understood that this modification is not canonical, but can be avoided by not attempting to measure closeness on disconnected graphs in the first place! Intuitively, closeness provides an index of the extent to which a given vertex has short paths to all other vertices in the graph; this is one reasonable measure of the extent to which a vertex is in the ``middle'' of a given structure.

References

Freeman, L.C. (1979). ``Centrality in Social Networks I: Conceptual Clarification.'' Social Networks, 1, 215-239.

See Also

centralization

Examples

Run this code
g<-rgraph(10)     #Draw a random graph with 10 members
closeness(g)      #Compute closeness scores

Run the code above in your browser using DataLab