# R igraph manual pages

Use this if you are using igraph from R

## Vertex and edge betweenness centrality

### Description

The vertex and edge betweenness are (roughly) defined by the number of geodesics (shortest paths) going through a vertex or an edge.

### Usage

```estimate_betweenness(graph, vids = V(graph), directed = TRUE, cutoff,
weights = NULL, nobigint = TRUE)

betweenness(graph, v = V(graph), directed = TRUE, weights = NULL,
nobigint = TRUE, normalized = FALSE)

edge_betweenness(graph, e = E(graph), directed = TRUE,
weights = NULL)
```

### Arguments

 `graph` The graph to analyze. `vids` The vertices for which the vertex betweenness estimation will be calculated. `directed` Logical, whether directed paths should be considered while determining the shortest paths. `cutoff` The maximum path length to consider when calculating the betweenness. If zero or negative then there is no such limit. `weights` Optional positive weight vector for calculating weighted betweenness. If the graph has a `weight` edge attribute, then this is used by default. Weights are used to calculate weighted shortest paths, so they are interpreted as distances. `nobigint` Logical scalar, whether to use big integers during the calculation. This is only required for lattice-like graphs that have very many shortest paths between a pair of vertices. If `TRUE` (the default), then big integers are not used. `v` The vertices for which the vertex betweenness will be calculated. `normalized` Logical scalar, whether to normalize the betweenness scores. If `TRUE`, then the results are normalized according to Bnorm=2*B/(n*n-3*n+2) , where Bnorm is the normalized, B the raw betweenness, and n is the number of vertices in the graph. `e` The edges for which the edge betweenness will be calculated.

### Details

The vertex betweenness of vertex \code{v} is defined by

sum( g_ivj / g_ij, i!=j,i!=v,j!=v)

The edge betweenness of edge \code{e} is defined by

sum( g_iej / g_ij, i!=j).

`betweenness` calculates vertex betweenness, `edge_betweenness` calculates edge betweenness.

`estimate_betweenness` only considers paths of length `cutoff` or smaller, this can be run for larger graphs, as the running time is not quadratic (if `cutoff` is small). If `cutoff` is zero or negative then the function calculates the exact betweenness scores.

`estimate_edge_betweenness` is similar, but for edges.

For calculating the betweenness a similar algorithm to the one proposed by Brandes (see References) is used.

### Value

A numeric vector with the betweenness score for each vertex in `v` for `betweenness`.

A numeric vector with the edge betweenness score for each edge in `e` for `edge_betweenness`.

`estimate_betweenness` returns the estimated betweenness scores for vertices in `vids`, `estimate_edge_betweenness` the estimated edge betweenness score for all edges; both in a numeric vector.

### Note

`edge_betweenness` might give false values for graphs with multiple edges.

### Author(s)

Gabor Csardi csardi.gabor@gmail.com

### References

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

Ulrik Brandes, A Faster Algorithm for Betweenness Centrality. Journal of Mathematical Sociology 25(2):163-177, 2001.

`closeness`, `degree`
```