This function detects communities within the transition networks
(represented by the tna
object).
It uses various algorithms to find communities in the graph representation
of transitions and returns a list
of communities for each cluster or a
specified cluster. If multiple transition matrices exist, the function
iterates over each cluster in the tna
object to find communities using
different algorithms. The function uses the igraph
package to convert
the transition matrices into graphs and then applies community detection
algorithms (e.g., Walktrap, Fast Greedy, Label Propagation, Infomap,
Edge Betweenness, Leading Eigenvector, and Spin Glass).
Usage
communities(x, ...)
# S3 method for class 'tna'
communities(x, methods, gamma = 1, ...)
# S3 method for class 'group_tna'
communities(x, methods, gamma = 1, ...)
Arguments
- x
A
tna
or agroup_tna
object.- ...
Ignored.
- methods
A
character
vector of community detection algorithms to apply to the network. The supported options are:"walktrap"
: A community detection method using short random walks."fast_greedy"
: A method based on modularity optimization."label_prop"
: A method that uses label propagation."infomap"
: A method that uses information flow to detect communities."edge_betweenness"
: A method that uses edge betweenness to find communities."leading_eigen"
: A method using the leading eigenvector of the modularity matrix."spinglass"
: A method based on the spinglass model.
If not provided, all methods are applied.
- gamma
A
numeric
value depicting a parameter that affects the behavior of certain algorithms like the Spin Glass method. Defaults to1
.
Value
An object of class tna_communities
which is a list
with an
element for each cluster containing:
counts
: Alist
with the number of communities found by each algorithm.assignments
: Adata.frame
where each row corresponds to a node and each column to a community detection algorithm, with color-coded community assignments.
If x
is a group_tna
object, a group_tna_communities
object is returned
instead, which is a list
of tna_communities
objects.
See also
Other communities:
plot.group_tna_communities()
,
plot.tna_communities()
,
print.group_tna_communities()
,
print.tna_communities()
Cluster-related functions
centralities()
,
deprune()
,
estimate_cs()
,
group_model()
,
mmm_stats()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
Examples
model <- tna(group_regulation)
comm <- communities(model)