Calculates the reciprocity of a directed graph.
Usage
reciprocity(graph, ignore.loops = TRUE, mode = c("default", "ratio"))
Arguments
- graph
The graph object.
- ignore.loops
Logical constant, whether to ignore loop edges.
- mode
See below.
Details
The measure of reciprocity defines the proportion of mutual connections, in
a directed graph. It is most commonly defined as the probability that the
opposite counterpart of a directed edge is also included in the graph. Or in
adjacency matrix notation:
1−(∑i,j|Aij−Aji|)/(2∑i,jAij).
This measure is calculated if the mode
argument is default
.
Prior to igraph version 0.6, another measure was implemented, defined as the
probability of mutual connection between a vertex pair, if we know that
there is a (possibly non-mutual) connection between them. In other words,
(unordered) vertex pairs are classified into three groups: (1)
not-connected, (2) non-reciprocally connected, (3) reciprocally connected.
The result is the size of group (3), divided by the sum of group sizes
(2)+(3). This measure is calculated if mode
is ratio
.
See also
Other structural.properties:
bfs()
,
component_distribution()
,
connect()
,
constraint()
,
coreness()
,
degree()
,
dfs()
,
distance_table()
,
edge_density()
,
feedback_arc_set()
,
girth()
,
is_acyclic()
,
is_dag()
,
is_matching()
,
k_shortest_paths()
,
knn()
,
laplacian_matrix()
,
subcomponent()
,
subgraph()
,
topo_sort()
,
transitivity()
,
unfold_tree()
,
which_multiple()
,
which_mutual()
Author
Tamas Nepusz ntamas@gmail.com and Gabor Csardi csardi.gabor@gmail.com
Examples
g <- sample_gnp(20, 5 / 20, directed = TRUE)
reciprocity(g)
#> [1] 0.2247191