These functions wraps a set of functions that all measures quantities of the local neighborhood of each node. They all return a vector or list matching the node position.

local_size(order = 1, mode = "all", mindist = 0)

local_members(order = 1, mode = "all", mindist = 0)

local_triangles()

local_ave_degree(weights = NULL)

local_transitivity(weights = NULL)

## Arguments

order Integer giving the order of the neighborhood. Character constant, it specifies how to use the direction of the edges if a directed graph is analyzed. For ‘out’ only the outgoing edges are followed, so all vertices reachable from the source vertex in at most order steps are counted. For ‘"in"’ all vertices from which the source vertex is reachable in at most order steps are counted. ‘"all"’ ignores the direction of the edges. This argument is ignored for undirected graphs. The minimum distance to include the vertex in the result. Weight vector. If the graph has a weight edge attribute, then this is used by default. If this argument is given, then vertex strength (see strength) is used instead of vertex degree. But note that knnk is still given in the function of the normal vertex degree. Weights are are used to calculate a weighted degree (also called strength) instead of the degree.

## Value

A numeric vector or a list (for local_members) with elements corresponding to the nodes in the graph.

## Functions

• local_size: The size of the neighborhood in a given distance from the node. (Note that the node itself is included unless mindist > 0). Wraps igraph::ego_size().

• local_members: The members of the neighborhood of each node in a given distance. Wraps igraph::ego().

• local_triangles: The number of triangles each node participate in. Wraps igraph::count_triangles().

• local_ave_degree: Calculates the average degree based on the neighborhood of each node. Wraps igraph::knn().

• local_transitivity: Calculate the transitivity of each node, that is, the propensity for the nodes neighbors to be connected. Wraps igraph::transitivity()

## Examples

# Get all neighbors of each graph
create_notable('chvatal') %>%
activate(nodes) %>%
mutate(neighborhood = local_members(mindist = 1))#> # A tbl_graph: 12 nodes and 24 edges
#> #
#> # An undirected simple graph with 1 component
#> #
#> # Node Data: 12 x 1 (active)
#>   neighborhood
#>   <list>
#> 1 <int >
#> 2 <int >
#> 3 <int >
#> 4 <int >
#> 5 <int >
#> 6 <int >
#> # … with 6 more rows
#> #
#> # Edge Data: 24 x 2
#>    from    to
#>   <int> <int>
#> 1     6     7
#> 2     7     8
#> 3     8     9
#> # … with 21 more rows
# These are equivalent
create_notable('chvatal') %>%
activate(nodes) %>%
mutate(n_neighbors = local_size(mindist = 1),
degree = centrality_degree()) %>%
as_tibble()#> # A tibble: 12 x 2
#>    n_neighbors degree
#>          <dbl>  <dbl>
#>  1           4      4
#>  2           4      4
#>  3           4      4
#>  4           4      4
#>  5           4      4
#>  6           4      4
#>  7           4      4
#>  8           4      4
#>  9           4      4
#> 10           4      4
#> 11           4      4
#> 12           4      4