These functions reformat the levels in manynet-consistent network data.

  • to_onemode() reformats two-mode network data into one-mode network data by simply removing the nodeset 'type' information. Note that this is not the same as to_mode1() or to_mode2().

  • to_twomode() reformats one-mode network data into two-mode network data, using a mark to distinguish the two sets of nodes.

  • to_multilevel() reformats two-mode network data into multimodal network data, which allows for more levels and ties within modes.

If the format condition is not met, for example to_onemode() is used on a network that is already one-mode, the network data is returned unaltered. No warning is given so that these functions can be used to ensure conformance.

Unlike the as_*() group of functions, these functions always return the same class as they are given, only transforming these objects' properties.


to_twomode(.data, mark)




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


A logical vector marking two types or modes. By default "type".


All to_ functions return an object of the same class as that provided. So passing it an igraph object will return an igraph object and passing it a network object will return a network object, with certain modifications as outlined for each function.


Not all functions have methods available for all object classes. Below are the currently implemented S3 methods:


See also

Other modifications: add_nodes(), add_ties(), as(), from, miss, reformat, split(), to_paths, to_project, to_scope