% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/get_reciprocity.R
\name{get_reciprocity}
\alias{get_reciprocity}
\title{Get the graph reciprocity}
\usage{
get_reciprocity(graph)
}
\arguments{
\item{graph}{A graph object of class \code{dgr_graph}.}
}
\value{
A single, numerical value that is the ratio value of reciprocal edges
over all graph edges.
}
\description{
Get the reciprocity of a directed graph. The reciprocity of a graph is the
fraction of reciprocal edges (e.g., \code{1} -> \code{2} and \code{2} -> \code{1}) over all edges
available in the graph. Note that for an undirected graph, all edges are
reciprocal. This function does not consider loop edges (e.g., \code{1} -> \code{1}).
}
\examples{
# Define a graph where 2 edge definitions
# have pairs of reciprocal edges
graph <-
  create_graph() |>
  add_cycle(n = 3) |>
  add_node(
    from = 1,
      to = 1) |>
  add_node(
    from = 1,
      to = 1)

# Get the graph reciprocity, which will
# be calculated as the ratio 4/7 (where
# 4 is the number reciprocating edges
# and 7 is the total number of edges
# in the graph)
graph |>
  get_reciprocity()

# For an undirected graph, all edges
# are reciprocal, so the ratio will
# always be 1
graph |>
  set_graph_undirected() |>
  get_reciprocity()

# For a graph with no edges, the graph
# reciprocity cannot be determined (and
# the same NA result is obtained from an
# empty graph)
create_graph() |>
  add_n_nodes(n = 5) |>
  get_reciprocity()

}
