These functions offer tools for transforming manynet-consistent objects (matrices, igraph, tidygraph, or network objects). Transforming means that the returned object may have different dimensions than the original object.

  • to_giant() scopes a network into one including only the main component and no smaller components or isolates.

  • to_no_isolates() scopes a network into one excluding all nodes without ties

  • to_subgraph() scopes a network into a subgraph by filtering on some node-related logical statement.

  • to_blocks() reduces a network to ties between a given partition membership vector.

to_giant(.data)

to_no_isolates(.data)

to_subgraph(.data, ...)

to_blocks(.data, membership, FUN = mean)

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

...

Arguments passed on to dplyr::filter

membership

A vector of partition memberships.

FUN

A function for summarising block content. By default mean. Other recommended options include median, sum, min or max.

Value

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.

Details

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

data.frameigraphlistmatrixnetworktbl_graph
to_blocks110111
to_giant110111
to_no_isolates111111
to_subgraph110111

to_blocks()

Reduced graphs provide summary representations of network structures by collapsing groups of connected nodes into single nodes while preserving the topology of the original structures.

See also

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

Examples

ison_adolescents %>%
  mutate_ties(wave = sample(1995:1998, 10, replace = TRUE)) %>%
  to_waves(attribute = "wave") %>%
  to_no_isolates()
#> $`1995`
#> # A longitudinal, labelled, undirected network with 5 nodes and 3 ties
#> # A tibble: 5 × 1
#>   name 
#>   <chr>
#> 1 Betty
#> 2 Sue  
#> 3 Alice
#> 4 Jane 
#> 5 Dale 
#> # A tibble: 3 × 3
#>    from    to  wave
#>   <int> <int> <int>
#> 1     1     2  1995
#> 2     3     4  1995
#> 3     4     5  1995
#> 
#> $`1996`
#> # A longitudinal, labelled, undirected network with 4 nodes and 4 ties
#> # A tibble: 4 × 1
#>   name 
#>   <chr>
#> 1 Sue  
#> 2 Alice
#> 3 Dale 
#> 4 Pam  
#> # A tibble: 4 × 3
#>    from    to  wave
#>   <int> <int> <int>
#> 1     1     2  1996
#> 2     1     3  1996
#> 3     2     3  1996
#> 4     2     4  1996
#> 
#> $`1998`
#> # A longitudinal, labelled, undirected network with 2 nodes and 1 ties
#> # A tibble: 2 × 1
#>   name 
#>   <chr>
#> 1 Sue  
#> 2 Pam  
#> # A tibble: 1 × 3
#>    from    to  wave
#>   <int> <int> <int>
#> 1     1     2  1998
#> 
#> $`1997`
#> # A longitudinal, labelled, undirected network with 3 nodes and 2 ties
#> # A tibble: 3 × 1
#>   name 
#>   <chr>
#> 1 Pam  
#> 2 Carol
#> 3 Tina 
#> # A tibble: 2 × 3
#>    from    to  wave
#>   <int> <int> <int>
#> 1     1     2  1997
#> 2     2     3  1997
#>