# equivalence: Equivalence clustering algorithms In migraph: Many Network Measures, Motifs, Members, and Models

 equivalence R Documentation

## Equivalence clustering algorithms

### Description

These functions combine an appropriate `⁠_census()⁠` function together with methods for calculating the hierarchical clusters provided by a certain distance calculation.

• `node_equivalence()` assigns nodes membership based on their equivalence with respective to some census/class. The following functions call this function, together with an appropriate census.

• `node_structural_equivalence()` assigns nodes membership based on their having equivalent ties to the same other nodes.

• `node_regular_equivalence()` assigns nodes membership based on their having equivalent patterns of ties.

• `node_automorphic_equivalence()` assigns nodes membership based on their having equivalent distances to other nodes.

A `plot()` method exists for investigating the dendrogram of the hierarchical cluster and showing the returned cluster assignment.

### Usage

``````node_equivalence(
.data,
census,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)

node_structural_equivalence(
.data,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)

node_regular_equivalence(
.data,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)

node_automorphic_equivalence(
.data,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)
``````

### 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 `census` A matrix returned by a `⁠node_*_census()⁠` function. `k` Typically a character string indicating which method should be used to select the number of clusters to return. By default `"silhouette"`, other options include `"elbow"` and `"strict"`. `"strict"` returns classes with members only when strictly equivalent. `"silhouette"` and `"elbow"` select classes based on the distance between clusters or between nodes within a cluster. Fewer, identifiable letters, e.g. `"e"` for elbow, is sufficient. Alternatively, if `k` is passed an integer, e.g. `k = 3`, then all selection routines are skipped in favour of this number of clusters. `cluster` Character string indicating whether clusters should be clustered hierarchically (`"hierarchical"`) or through convergence of correlations (`"concor"`). Fewer, identifiable letters, e.g. `"c"` for CONCOR, is sufficient. `distance` Character string indicating which distance metric to pass on to `stats::dist`. By default `"euclidean"`, but other options include `"maximum"`, `"manhattan"`, `"canberra"`, `"binary"`, and `"minkowski"`. Fewer, identifiable letters, e.g. `"e"` for Euclidean, is sufficient. `range` Integer indicating the maximum number of (k) clusters to evaluate. Ignored when `k = "strict"` or a discrete number is given for `k`.

### Source

Other memberships: `cliques`, `community`, `components()`, `core`

### Examples

``````
plot(nse)