These functions combine an appropriate node_by_*()
function
together with methods for calculating the hierarchical clusters
provided by a certain distance calculation.
node_in_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_in_structural()
assigns nodes membership based on their
having equivalent ties to the same other nodes.
node_in_regular()
assigns nodes membership based on their
having equivalent patterns of ties.
node_in_automorphic()
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.
node_in_equivalence(
.data,
census,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor", "cosine"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)
node_in_structural(
.data,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor", "cosine"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)
node_in_regular(
.data,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor", "cosine"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)
node_in_automorphic(
.data,
k = c("silhouette", "elbow", "strict"),
cluster = c("hierarchical", "concor", "cosine"),
distance = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"),
range = 8L
)
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 matrix returned by a node_by_*()
function.
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.
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.
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.
Integer indicating the maximum number of (k) clusters
to evaluate.
Ignored when k = "strict"
or a discrete number is given for k
.
Other memberships:
mark_core
,
member_brokerage
,
member_cliques
,
member_community_hier
,
member_community_non
,
member_components
# \donttest{
(nse <- node_in_structural(ison_algebra))
#> 4 groups
#> V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 V13
#> 1 A B C A C C B B A A C A B
#> # ... with 3 more values from this nodeset unprinted. Use `print(..., n = Inf)` to print all values.
if(require("ggdendro", quietly = TRUE)){
plot(nse)
}
# }
# \donttest{
(nre <- node_in_regular(ison_southern_women,
cluster = "concor"))
#> 8 groups
#> Evelyn Laura Theresa Brenda Charlotte Frances Eleanor Pearl Ruth Verne Myra
#> 1 A B A B C C D D D D C
#> # ... with 7 more values from this nodeset unprinted. Use `print(..., n = Inf)` to print all values.
#> E1 E2 E3 E4 E5 E6 E7 E8 E9 E10 E11 E12 E13
#> 1 E E F E F F G H G E E F E
#> # ... with 1 more values from this nodeset unprinted. Use `print(..., n = Inf)` to print all values.
if(require("ggdendro", quietly = TRUE)){
plot(nre)
}
# }
# \donttest{
if(require("sna", quietly = TRUE)){
(nae <- node_in_automorphic(ison_southern_women,
k = "elbow"))
if(require("ggdendro", quietly = TRUE)){
plot(nae)
}
}
#>
#> Attaching package: ‘statnet.common’
#> The following objects are masked from ‘package:base’:
#>
#> attr, order
#>
#> ‘network’ 1.19.0 (2024-12-08), part of the Statnet Project
#> * ‘news(package="network")’ for changes since last version
#> * ‘citation("network")’ for citation information
#> * ‘https://statnet.org’ for help, support, and other information
#> sna: Tools for Social Network Analysis
#> Version 2.8 created on 2024-09-07.
#> copyright (c) 2005, Carter T. Butts, University of California-Irvine
#> For citation information, type citation("sna").
#> Type help(package="sna") to get started.
# }