mark_features function

Marking networks features

Marking networks features

These functions implement logical tests for various network features.

  • is_connected() tests whether network is strongly connected, or weakly connected if undirected.
  • is_perfect_matching() tests whether there is a matching for a network that covers every node in the network.
  • is_eulerian() tests whether there is a Eulerian path for a network where that path passes through every tie exactly once.
  • is_acyclic() tests whether network is a directed acyclic graph.
  • is_aperiodic() tests whether network is aperiodic.

Source

https://stackoverflow.com/questions/55091438/r-igraph-find-all-cycles

is_connected(.data) is_perfect_matching(.data, mark = "type") is_eulerian(.data) is_acyclic(.data) is_aperiodic(.data, max_path_length = 4)

Arguments

  • .data: An object of a {manynet}-consistent class:

    • matrix (adjacency or incidence) from {base} R
    • edgelist, a data frame from {base} R or tibble from {tibble}
    • igraph, from the {igraph} package
    • network, from the {network} package
    • tbl_graph, from the {tidygraph} package
  • mark: A logical vector marking two types or modes. By default "type".

  • max_path_length: Maximum path length considered. If negative, paths of all lengths are considered. By default 4, to avoid potentially very long computation times.

Returns

TRUE if the condition is met, or FALSE otherwise.

is_connected

To test weak connection on a directed network, please see to_undirected().

is_perfect_matching

For two-mode or bipartite networks, to_matching() is used to identify whether a perfect matching is possible. For one-mode networks, we use the Tutte theorem. Note that currently only subgraphs with cutpoints removed are tested, and not all possible subgraphs. This is to avoid computationally expensive combinatorial operations, but may come at the cost of some edge cases where a one-mode network cannot perfectly match as suggested.

Examples

is_connected(ison_southern_women) is_perfect_matching(ison_southern_women) is_eulerian(ison_brandes) is_acyclic(ison_algebra) is_aperiodic(ison_algebra)

References

On perfect matching

Tutte, William T. 1950. "The factorization of locally finite graphs". Canadian Journal of Mathematics. 2: 44–49. tools:::Rd_expr_doi("10.4153/cjm-1950-005-2")

On aperiodicity

Jarvis, J.P, and D.R. Shier. 1996. "Graph-theoretic analysis of finite Markov chains", in Shier, D.R., Wallenius, K.T. (eds) Applied Mathematical Modeling: A Multidisciplinary Approach. CRC Press.

See Also

Other marking: mark_format, mark_is

  • Maintainer: James Hollway
  • License: MIT + file LICENSE
  • Last published: 2024-11-05