This function checks the reciprocal pair of the supplied edges.

## Usage

which_mutual(graph, eids = E(graph), loops = TRUE)

## Arguments

graph

The input graph.

eids

Edge sequence, the edges that will be probed. By default is includes all edges in the order of their ids.

loops

Logical, whether to consider directed self-loops to be mutual.

## Value

A logical vector of the same length as the number of edges supplied.

## Details

In a directed graph an (A,B) edge is mutual if the graph also includes a (B,A) directed edge.

Note that multi-graphs are not handled properly, i.e. if the graph contains two copies of (A,B) and one copy of (B,A), then these three edges are considered to be mutual.

Undirected graphs contain only mutual edges by definition.

reciprocity(), dyad_census() if you just want some statistics about mutual edges.

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(), reciprocity(), subcomponent(), subgraph(), topo_sort(), transitivity(), unfold_tree(), which_multiple()

## Author

Gabor Csardi csardi.gabor@gmail.com

## Examples


g <- sample_gnm(10, 50, directed = TRUE)
reciprocity(g)
#> [1] 0.52
#> $mut #> [1] 13 #> #>$asym
#> $null #> [1] 8 #> which_mutual(g) #> [1] FALSE TRUE FALSE TRUE TRUE TRUE FALSE FALSE TRUE TRUE TRUE FALSE #> [13] TRUE TRUE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE FALSE FALSE #> [25] FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE FALSE FALSE #> [37] FALSE TRUE TRUE FALSE FALSE TRUE FALSE TRUE TRUE FALSE TRUE TRUE #> [49] TRUE TRUE sum(which_mutual(g)) / 2 == dyad_census(g)$mut