Title: | Transition Network Analysis (TNA) |
---|---|
Description: | Provides tools for performing Transition Network Analysis (TNA) to study relational dynamics, including functions for building and plotting TNA models, calculating centrality measures, and identifying dominant events and patterns. TNA statistical techniques (e.g., bootstrapping and permutation tests) ensure the reliability of observed insights and confirm that identified dynamics are meaningful. See (Saqr et al., 2024) <doi:10.48550/arXiv.2411.15486> for more details on TNA. |
Authors: | Sonsoles López-Pernas [aut, cre], Santtu Tikka [aut], Mohammed Saqr [aut] |
Maintainer: | Sonsoles López-Pernas <[email protected]> |
License: | MIT + file LICENSE |
Version: | 0.3.1 |
Built: | 2024-12-16 16:29:23 UTC |
Source: | https://github.com/sonsoleslp/tna |
tna
package.Provides tools for performing transition network analysis (TNA),
including functions for building TNA models, plotting transition networks,
and calculating centrality measures. The package relies on the qgraph
and igraph
for network plotting and centrality measure calculations.
Sonsoles López-Pernas, Santtu Tikka, Mohamed Saqr
Saqr M., López-Pernas S., Törmänen T., Kaliisa R., Misiejuk K., Tikka S. (2024). Transition Network Analysis: A Novel Framework for Modeling, Visualizing, and Identifying the Temporal Patterns of Learners and Learning Processes. https://arxiv.org/abs/2411.15486
Banerjee A., Chandrasekhar A., Duflo E., Jackson M. (2014). Gossip: Identifying Central Individuals in a Social Network. Working Paper.
Kivimaki, I., Lebichot, B., Saramaki, J., Saerens, M. (2016). Two betweenness centrality measures based on Randomized Shortest Paths. Scientific Reports, 6, 19668.
Serrano, M. A., Boguna, M., Vespignani, A. (2009). Extracting the multiscale backbone of complex weighted networks. Proceedings of the National Academy of Sciences, 106, 6483-6488.
Zhang, B., Horvath, S. (2005). A general framework for weighted gene co-expression network analysis. Statistical Applications in Genetics and Molecular Biology, 4(1).
Useful links:
group_tna
object to an igraph
object.Coerce a specific group from a group_tna
object to an igraph
object.
## S3 method for class 'group_tna' as.igraph(x, which, ...)
## S3 method for class 'group_tna' as.igraph(x, which, ...)
x |
The object to convert. |
which |
The number or name of the group. |
... |
Additional arguments. None currently. |
An igraph
object.
tna
object to an igraph
object.Coerce a tna
object to an igraph
object.
## S3 method for class 'tna' as.igraph(x, ...)
## S3 method for class 'tna' as.igraph(x, ...)
x |
The object to convert. |
... |
Additional arguments. None currently. |
An igraph
object.
This function builds a network from a transition matrix in a tna
object
and computes edge betweenness for the network. Optionally, it visualizes the
network using the qgraph
package, with the edge thickness representing the
edge betweenness values.
betweenness_network(x, ...) ## S3 method for class 'tna' betweenness_network(x, ...)
betweenness_network(x, ...) ## S3 method for class 'tna' betweenness_network(x, ...)
x |
A |
... |
Ignored. |
The function first converts the transition matrix for the specified cluster
into a directed graph using the igraph
package. It then calculates the
edge betweenness of the graph, which is a measure of how often an edge lies
on the shortest paths between pairs of nodes.
If plot = TRUE
, the function uses qgraph
to visualize the network,
where edge thickness is proportional to edge betweenness, node colors are
derived from the tna
object, and Pie
values from the tna
object are
displayed on the nodes.
The layout of the network can be customized via the layout
parameter,
which can either be a predefined layout from qgraph
or a user-specified
matrix of node positions.
A tna
object where edge betweenness represents the edge weights.
model <- tna(group_regulation) betweenness_network(model)
model <- tna(group_regulation) betweenness_network(model)
Perform bootstrapping on transition networks created from
sequence data stored in a tna
object. Bootstrapped estimates
of edge weights are returned with confidence intervals and significance
testing.
bootstrap(x, ...) ## S3 method for class 'tna' bootstrap(x, iter = 1000, level = 0.05, threshold, ...) ## S3 method for class 'group_tna' bootstrap(x, ...)
bootstrap(x, ...) ## S3 method for class 'tna' bootstrap(x, iter = 1000, level = 0.05, threshold, ...) ## S3 method for class 'group_tna' bootstrap(x, ...)
x |
A |
... |
Ignored. |
iter |
An |
level |
A |
threshold |
A |
The function first computes the original edge weights for the specified
cluster from the tna
object. It then performs bootstrapping by resampling
the sequence data and recalculating the edge weights for each
bootstrap sample. The mean and standard deviation of the transitions are
computed, and confidence intervals are derived. The function also calculates
p-values for each edge and identifies significant edges based on
the specified significance level. A matrix of significant edges
(those with p-values below the significance level) is generated.
Additional statistics on removed edges (those not considered
significant) are provided.
All results, including the original transition matrix, bootstrapped estimates, and summary statistics for removed edges, are returned in a structured list.
A tna_bootstrap
object which is a list
containing the
following elements:
weights_orig
: The original edge weight matrix
.
weights_sig
: The matrix
of significant transitions
(those with p-values below the significance level).
weights_mean
: The mean weight matrix
from the bootstrap samples.
weights_sd
: The standard deviation matrix
from the bootstrap samples.
ci_lower
: The lower bound matrix
of the confidence intervals for
the edge weights.
ci_upper
: The upper bound matrix
of the confidence intervals for
the edge weights.
p_values
: The matrix
of p-values for the edge weights.
summary
: A data.frame
summarizing the edges, their weights,
p-values, statistical significance and confidence intervals.
If x
is a group_tna
object, the output is a group_tna_bootstrap
object, which is a list
of tna_bootstrap
objects.
Evaluation and validation functions
permutation_test()
,
prune()
,
pruning_details()
Cluster-related functions
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) # Small number of iterations for CRAN bootstrap(model, iter = 10)
model <- tna(engagement) # Small number of iterations for CRAN bootstrap(model, iter = 10)
This function constructs a transition network analysis (TNA) model from a
given sequence. It takes a sequence of events or states and builds a Markov
model. It extracts the transition probabilities
and initial probabilities from the model and stores them in a list
along
with the state labels. Additionally, it creates a transition matrix with
zero diagonal entries (without loops). Also accepts matrices of transition
probabilities and initial state probabilities directly.
build_model(x, type = "relative", scaling = character(0L), ...) ## Default S3 method: build_model(x, type = "relative", scaling = character(0L), inits, ...) ## S3 method for class 'matrix' build_model(x, type = "relative", scaling = character(0L), inits, ...) ## S3 method for class 'stslist' build_model(x, type = "relative", scaling = character(0L), ...) ## S3 method for class 'data.frame' build_model(x, type = "relative", scaling = character(0L), ...) tna(x, scaling = character(0L), ...) ftna(x, scaling = character(0L), ...) ctna(x, scaling = character(0L), ...) group_tna(x, scaling = character(0L), ...) group_ftna(x, scaling = character(0L), ...) group_ctna(x, scaling = character(0L), ...)
build_model(x, type = "relative", scaling = character(0L), ...) ## Default S3 method: build_model(x, type = "relative", scaling = character(0L), inits, ...) ## S3 method for class 'matrix' build_model(x, type = "relative", scaling = character(0L), inits, ...) ## S3 method for class 'stslist' build_model(x, type = "relative", scaling = character(0L), ...) ## S3 method for class 'data.frame' build_model(x, type = "relative", scaling = character(0L), ...) tna(x, scaling = character(0L), ...) ftna(x, scaling = character(0L), ...) ctna(x, scaling = character(0L), ...) group_tna(x, scaling = character(0L), ...) group_ftna(x, scaling = character(0L), ...) group_ctna(x, scaling = character(0L), ...)
x |
A |
type |
A
|
scaling |
A
|
... |
Ignored. |
inits |
An optional |
An object of class tna
which is a list
containing the
following elements:
weights
: An adjacency matrix
of the model (weight matrix).
inits
: A numeric
vector of initial values for each state.
For matrix
type x
, this element will be NULL
if inits
is not
directly provided
labels
: A character
vector of the state labels, or NULL
if
there are no labels.
data
: The original sequence data that has been converted to an
internal format used by the package when x
is a stslist
or a
data.frame
object. Otherwise NULL
.
Core functions
centralities()
,
plot.tna()
,
plot.tna_centralities()
,
plot_compare()
model <- build_model(engagement) print(model) model <- tna(engagement) model <- ftna(engagement) model <- ctna(engagement) model <- group_tna(engagement, group = gl(2, 100)) model <- group_ftna(engagement, group = gl(2, 100)) model <- group_ctna(engagement, group = gl(2, 100))
model <- build_model(engagement) print(model) model <- tna(engagement) model <- ftna(engagement) model <- ctna(engagement) model <- group_tna(engagement, group = gl(2, 100)) model <- group_ftna(engagement, group = gl(2, 100)) model <- group_ctna(engagement, group = gl(2, 100))
Calculates several centrality measures. See 'Details' for information about the measures.
centralities(x, loops = FALSE, normalize = FALSE, measures, ...) ## S3 method for class 'tna' centralities(x, loops = FALSE, normalize = FALSE, measures, ...) ## S3 method for class 'matrix' centralities(x, loops = FALSE, normalize = FALSE, measures, ...) ## S3 method for class 'group_tna' centralities(x, loops = FALSE, normalize = FALSE, measures, ...)
centralities(x, loops = FALSE, normalize = FALSE, measures, ...) ## S3 method for class 'tna' centralities(x, loops = FALSE, normalize = FALSE, measures, ...) ## S3 method for class 'matrix' centralities(x, loops = FALSE, normalize = FALSE, measures, ...) ## S3 method for class 'group_tna' centralities(x, loops = FALSE, normalize = FALSE, measures, ...)
x |
A |
loops |
A |
normalize |
A |
measures |
A |
... |
Ignored. |
The following measures are provided:
OutStrength
: Outgoing strength centrality, calculated using
igraph::strength()
with mode = "out"
. It measures the total weight
of the outgoing edges from each node.
InStrength
: Incoming strength centrality, calculated using
igraph::strength()
with mode = "in"
. It measures the total weight
of the incoming edges to each node.
ClosenessIn
: Closeness centrality (incoming), calculated using
igraph::closeness()
with mode = "in"
. It measures how close a node
is to all other nodes based on the incoming paths.
ClosenessOut
: Closeness centrality (outgoing), calculated using
igraph::closeness()
with mode = "out"
. It measures how close a node
is to all other nodes based on the outgoing paths.
Closeness
: Closeness centrality (overall), calculated using
igraph::closeness()
with mode = "all"
. It measures how close a node
is to all other nodes based on both incoming and outgoing paths.
Betweenness
: Betweenness centrality defined by the number of
geodesics calculated using igraph::betweenness()
.
BetweennessRSP
: Betweenness centrality based on randomized shortest
paths (Kivimäki et al. 2016). It measures the extent to which a
node lies on the shortest paths between other nodes.
Diffusion
: Diffusion centrality of Banerjee et.al. (2014).
It measures the influence of a node in spreading information through
the network.
Clustering
: Signed clustering coefficient of Zhang and Horvath (2005)
based on the symmetric adjacency matrix (sum of the adjacency matrix
and its transpose). It measures the degree to which nodes tend to
cluster together.
A centralities
object which is a tibble (tbl_df
)
containing centrality measures for each state.
Core functions
build_model()
,
plot.tna()
,
plot.tna_centralities()
,
plot_compare()
Cluster-related functions
bootstrap()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) # Centrality measures including loops in the network centralities(model) # Centrality measures excluding loops in the network centralities(model, loops = FALSE) # Centrality measures normalized centralities(model, normalize = TRUE)
model <- tna(engagement) # Centrality measures including loops in the network centralities(model) # Centrality measures excluding loops in the network centralities(model, loops = FALSE) # Centrality measures normalized centralities(model, normalize = TRUE)
This function identifies cliques of a specified size in a transition network.
It searches for cliques—complete subgraphs where every pair of nodes is
connected—of size n
in the transition matrix for the specified cluster
in the tna
object.
cliques(x, ...) ## S3 method for class 'tna' cliques(x, size = 2, threshold = 0, sum_weights = FALSE, ...) ## S3 method for class 'group_tna' cliques(x, size = 2, threshold = 0, sum_weights = FALSE, ...)
cliques(x, ...) ## S3 method for class 'tna' cliques(x, size = 2, threshold = 0, sum_weights = FALSE, ...) ## S3 method for class 'group_tna' cliques(x, size = 2, threshold = 0, sum_weights = FALSE, ...)
x |
A |
... |
Ignored. |
size |
An |
threshold |
A |
sum_weights |
A |
A tna_cliques
object which is a list
of two elements:
weights
is a matrix
of the edge weights in the clique.
inits
is a numeric
vector of initial weights for the clique.
If x
is a group_tna
object, a group_tna_cliques
object is returned
instead, which is a list
or tna_cliques
objects.
Cluster-related functions
bootstrap()
,
centralities()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) # Find 2-cliques (dyads) cliq <- cliques(model, size = 2)
model <- tna(engagement) # Find 2-cliques (dyads) cliq <- cliques(model, size = 2)
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).
communities(x, ...) ## S3 method for class 'tna' communities(x, gamma = 1, ...) ## S3 method for class 'group_tna' communities(x, gamma = 1, ...)
communities(x, ...) ## S3 method for class 'tna' communities(x, gamma = 1, ...) ## S3 method for class 'group_tna' communities(x, gamma = 1, ...)
x |
A |
... |
Ignored. |
gamma |
A |
An object of class tna_communities
which is a list
with an
element for each cluster containing:
counts
: A list
with the number of communities found
by each algorithm.
assignments
: A data.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.
Pattern-finding functions
plot.tna_communities()
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) comm <- communities(model)
model <- tna(engagement) comm <- communities(model)
Restore a Pruned Transition Network Analysis Model
deprune(x, ...) ## S3 method for class 'tna' deprune(x, ...) ## S3 method for class 'tna' reprune(x, ...) ## S3 method for class 'group_tna' deprune(x, ...)
deprune(x, ...) ## S3 method for class 'tna' deprune(x, ...) ## S3 method for class 'tna' reprune(x, ...) ## S3 method for class 'group_tna' deprune(x, ...)
x |
A |
... |
Ignored. |
A tna
or group_tna
object that has not been pruned.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) pruned_model <- prune(model, method = "threshold", threshold = 0.1) depruned_model <- deprune(pruned_model) # restore original model
model <- tna(engagement) pruned_model <- prune(model, method = "threshold", threshold = 0.1) depruned_model <- deprune(pruned_model) # restore original model
Students' engagement states (Active / Average / Disengaged) throughout a whole study program. The data was generated synthetically based on the article "The longitudinal association between engagement and achievement varies by time, students’ profiles, and achievement state: A full program study"
engagement
engagement
A stslist
object (sequence data).
doi:10.1016/j.compedu.2023.104787
Other examples:
engagement_mmm
,
group_regulation
engagement
dataExample mixed Markov model fitted to the engagement
data
engagement_mmm
engagement_mmm
A mhmm
object.
The data was generated via mixed_markov_model.R
in
https://github.com/sonsoleslp/tna/tree/main/data-raw/
Other examples:
engagement
,
group_regulation
Estimates the stability of centrality measures in a network using subset sampling without replacement. It allows for dropping varying proportions of cases and calculates correlations between the original centralities and those computed using sampled subsets.
estimate_cs(x, ...) estimate_centrality_stability(x, ...) ## S3 method for class 'tna' estimate_cs( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... ) ## S3 method for class 'tna' estimate_centrality_stability( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... ) ## S3 method for class 'group_tna' estimate_cs( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... ) ## S3 method for class 'group_tna' estimate_centrality_stability( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... )
estimate_cs(x, ...) estimate_centrality_stability(x, ...) ## S3 method for class 'tna' estimate_cs( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... ) ## S3 method for class 'tna' estimate_centrality_stability( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... ) ## S3 method for class 'group_tna' estimate_cs( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... ) ## S3 method for class 'group_tna' estimate_centrality_stability( x, loops = FALSE, normalize = FALSE, measures = c("InStrength", "OutStrength", "Betweenness"), iter = 1000, method = "pearson", drop_prop = seq(0.1, 0.9, by = 0.1), threshold = 0.7, certainty = 0.95, detailed = FALSE, progressbar = FALSE, ... )
x |
A |
... |
Ignored. |
loops |
A |
normalize |
A |
measures |
A |
iter |
An |
method |
A |
drop_prop |
A |
threshold |
A |
certainty |
A |
detailed |
A |
progressbar |
A |
The function works by repeatedly resampling the data, dropping varying proportions of cases, and calculating centrality measures on the subsets. The correlation between the original centralities and the resampled centralities is calculated for each drop proportion. The stability of each centrality measure is then summarized using a centrality stability (CS) coefficient, which represents the proportion of dropped cases at which the correlations drop below a given threshold (default 0.7).
The results can be visualized by plotting the output object showing the stability of the centrality measures across different drop proportions, along with confidence intervals. The CS-coefficients are displayed in the subtitle.
A tna_stability
object which is a list
with an element for each
measure
with the following elements:
cs_coefficient
: The centrality stability (CS) coefficient
of the measure.
correlations
: A matrix
of correlations between the original
centrality and the resampled centralities for each drop proportion.
detailed_results
: A detailed data frame of the sampled correlations,
returned only if return_detailed = TRUE
If x
is a group_tna
object, a group_tna_stability
object is returned
instead, which is a list
of tna_stability
objects.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) # Small number of iterations and drop proportions for CRAN estimate_cs( model, drop_prop = seq(0.3, 0.9, by = 0.2), measures = c("InStrength", "OutStrength"), iter = 10 )
model <- tna(engagement) # Small number of iterations and drop proportions for CRAN estimate_cs( model, drop_prop = seq(0.3, 0.9, by = 0.2), measures = c("InStrength", "OutStrength"), iter = 10 )
Parse Event Data Into Sequence Data
event2sequence( data, actor_col, time_col, action_col, time_threshold = 900, custom_format = NULL, is_unix_time = FALSE, unix_time_unit = "seconds", verbose = TRUE )
event2sequence( data, actor_col, time_col, action_col, time_threshold = 900, custom_format = NULL, is_unix_time = FALSE, unix_time_unit = "seconds", verbose = TRUE )
data |
A |
actor_col |
A |
time_col |
A |
action_col |
A |
time_threshold |
TODO |
custom_format |
A |
is_unix_time |
A |
unix_time_unit |
A |
verbose |
A |
TODO.
# TODO
# TODO
This function constructs a transition network analysis (TNA) model for each cluster from a given sequence, wide-formatted dataframe, or a mixture Markov model.
group_model(x, group, ...) ## Default S3 method: group_model(x, group, ...) ## S3 method for class 'mhmm' group_model(x, ...)
group_model(x, group, ...) ## Default S3 method: group_model(x, group, ...) ## S3 method for class 'mhmm' group_model(x, ...)
x |
An |
group |
A vector indicating the cluster assignment of each
row of the data / sequence. Must have the same length as the number of
rows/sequences of |
... |
Ignored. |
An object of class group_tna
which is a list
containing one
element per cluster. Each element is a tna
object.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
group <- c(rep("High", 100), rep("Low", 100)) model <- group_model(engagement, group = group)
group <- c(rep("High", 100), rep("Low", 100)) model <- group_model(engagement, group = group)
Students' regulation during collaborative learning. Students' interactions were coded as: "adapt", "cohesion", "consensus", "coregulate", "discuss", "emotion", "monitor", "plan", "synthesis"
group_regulation
group_regulation
A data.frame
object.
The data was generated synthetically.
Other examples:
engagement
,
engagement_mmm
group_tna
Object.Plot a Histogram of Edge Weights for a group_tna
Object.
## S3 method for class 'group_tna' hist(x, ...)
## S3 method for class 'group_tna' hist(x, ...)
x |
A |
... |
Additional arguments passed to |
A list
(invisibly) of histogram
objects of the edge weights of
each cluster.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) hist(model)
model <- group_model(engagement_mmm) hist(model)
Plot a Histogram of Edge Weights in the Network
## S3 method for class 'tna' hist(x, breaks, col = "lightblue", main, xlab, border = "white", ...)
## S3 method for class 'tna' hist(x, breaks, col = "lightblue", main, xlab, border = "white", ...)
x |
a vector of values for which the histogram is desired. |
breaks |
one of:
In the last three cases the number is a suggestion only; as the
breakpoints will be set to |
col |
a colour to be used to fill the bars. |
main |
A |
xlab |
A |
border |
the color of the border around the bars. The default is to use the standard foreground color. |
... |
Additional arguments passed to |
A histogram
object of edge weights.
model <- tna(engagement) hist(model)
model <- tna(engagement) hist(model)
Retrieve statistics from a mixture Markov model (MMM)
mmm_stats(x, use_t_dist = TRUE, level = 0.05)
mmm_stats(x, use_t_dist = TRUE, level = 0.05)
x |
An |
use_t_dist |
A |
level |
A |
A data.frame
object.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
mmm_stats(engagement_mmm)
mmm_stats(engagement_mmm)
This function compares two networks built from sequence data using permutation tests. The function builds Markov models for two sequence objects, computes the transition probabilities, and compares them by performing permutation tests. It returns the differences in transition probabilities, effect sizes, p-values, and confidence intervals.
permutation_test( x, y, iter = 1000, paired = FALSE, level = 0.05, measures = character(0), ... )
permutation_test( x, y, iter = 1000, paired = FALSE, level = 0.05, measures = character(0), ... )
x |
A |
y |
A |
iter |
An |
paired |
A |
level |
A |
measures |
A |
... |
Additional arguments passed to |
A tna_permutation
object which is a list
with two elements:
edges
and centralities
, both containing the following elements
stats
: A data.frame
of original differences and p-values for
each edge or centrality measure
diffs_true
: A matrix
of differences in the data.
diffs_sig
: A matrix
showing the significant differences.
Evaluation and validation functions
bootstrap()
,
prune()
,
pruning_details()
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) # Small number of iterations for CRAN permutation_test(model_x, model_y, iter = 20)
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) # Small number of iterations for CRAN permutation_test(model_x, model_y, iter = 20)
Plots the difference network between model x
and model y
. The edges are
computed from subtracting the two models. The pie chart is the difference in
initial probabilities between model x
and model y
. Green color indicates
that x
is greater than y
and red indicates otherwise.
plot_compare(x, y, ...)
plot_compare(x, y, ...)
x |
An object of class |
y |
An object of class |
... |
Additional arguments passed to |
A qgraph
object displaying the difference network between the
two models.
Core functions
build_model()
,
centralities()
,
plot.tna()
,
plot.tna_centralities()
model_x <- tna(engagement[engagement[, 1] == "Active", ]) model_y <- tna(engagement[engagement[, 1] != "Active", ]) plot_compare(model_x, model_y)
model_x <- tna(engagement[engagement[, 1] == "Active", ]) model_y <- tna(engagement[engagement[, 1] != "Active", ]) plot_compare(model_x, model_y)
Plot a Transition Network Model from a Matrix of Edge Weights
plot_model( x, labels, colors, edge.labels = TRUE, layout = "circle", mar = rep(5, 4), theme = "colorblind", ... )
plot_model( x, labels, colors, edge.labels = TRUE, layout = "circle", mar = rep(5, 4), theme = "colorblind", ... )
x |
A square |
labels |
See |
colors |
See |
edge.labels |
See |
layout |
One of the following:
|
mar |
See |
theme |
See |
... |
Additional arguments passed to |
See plot.tna()
.
m <- matrix(rexp(25), 5, 5) plot_model(m)
m <- matrix(rexp(25), 5, 5) plot_model(m)
Plots a transition network of each cluster using qgraph
.
## S3 method for class 'group_tna' plot(x, title, ...)
## S3 method for class 'group_tna' plot(x, title, ...)
x |
A |
title |
A title for each plot. It can be a single string (the same one will be used for all plots) or a list (one per group) |
... |
Same as |
NULL
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) plot(model)
model <- group_model(engagement_mmm) plot(model)
Plot Centrality Measures
## S3 method for class 'group_tna_centralities' plot( x, reorder = TRUE, ncol = 4, scales = c("free_x", "fixed"), colors, labels = TRUE, ... )
## S3 method for class 'group_tna_centralities' plot( x, reorder = TRUE, ncol = 4, scales = c("free_x", "fixed"), colors, labels = TRUE, ... )
x |
A |
reorder |
A |
ncol |
Number of columns to use for the facets. The default is 3. |
scales |
Either |
colors |
The colors for each node (default is the model colors
if the |
labels |
A |
... |
Ignored. |
A ggplot
object displaying a line chart for each centrality
with one line per cluster.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) cm <- centralities(model) plot(cm)
model <- group_model(engagement_mmm) cm <- centralities(model) plot(cm)
Plot Found Cliques
## S3 method for class 'group_tna_cliques' plot(x, title, ...)
## S3 method for class 'group_tna_cliques' plot(x, title, ...)
x |
A |
title |
A |
... |
Arguments passed to |
A list
(invisibly) with one element per cluster. Each element
contains a qgraph
plot when only one clique is present per cluster,
otherwise the element is NULL
.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) cliq <- cliques(model, size = 2) plot(cliq)
model <- group_model(engagement_mmm) cliq <- cliques(model, size = 2) plot(cliq)
Plot Found Communities
## S3 method for class 'group_tna_communities' plot(x, title = names(x), colors, ...)
## S3 method for class 'group_tna_communities' plot(x, title = names(x), colors, ...)
x |
A |
title |
A |
colors |
A |
... |
Arguments passed to |
A list
(invisibly) of qgraph
objects in which the nodes are
colored by community for each cluster.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) comm <- communities(model) plot(comm)
model <- group_model(engagement_mmm) comm <- communities(model) plot(comm)
Plot Centrality Stability Results
## S3 method for class 'group_tna_stability' plot(x, ...)
## S3 method for class 'group_tna_stability' plot(x, ...)
x |
A |
... |
Arguments passed to |
A list
(invisibly) of ggplot
objects displaying the stability
analysis plot.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) # Low number of iterations for CRAN stability <- estimate_cs( model, drop_prop = c(0.3, 0.5, 0.7, 0.9), iter = 10 ) plot(stability)
model <- group_model(engagement_mmm) # Low number of iterations for CRAN stability <- estimate_cs( model, drop_prop = c(0.3, 0.5, 0.7, 0.9), iter = 10 ) plot(stability)
This function plots a transition network analysis (TNA) model using
the qgraph
package. The nodes in the graph represent states, with node
sizes corresponding to initial state probabilities. Edge labels represent
the edge weights of the network.
## S3 method for class 'tna' plot( x, labels, colors, pie, edge.labels = TRUE, layout = "circle", layout_args = list(), mar = rep(5, 4), theme = "colorblind", ... )
## S3 method for class 'tna' plot( x, labels, colors, pie, edge.labels = TRUE, layout = "circle", layout_args = list(), mar = rep(5, 4), theme = "colorblind", ... )
x |
A |
labels |
See |
colors |
See |
pie |
See |
edge.labels |
See |
layout |
One of the following:
|
layout_args |
A |
mar |
See |
theme |
See |
... |
Additional arguments passed to |
A qgraph
plot of the transition network.
Core functions
build_model()
,
centralities()
,
plot.tna_centralities()
,
plot_compare()
model <- tna(engagement) plot(model)
model <- tna(engagement) plot(model)
Plots the centrality measures of a tna_centralities
object as a
lollipop chart. The resulting plot includes facets for each centrality
measure, showing the values for each state. The returned plot is a
ggplot2
object, so it can be easily modified and styled. See
centralities()
for details on the centrality measures.
## S3 method for class 'tna_centralities' plot( x, reorder = TRUE, ncol = 3, scales = c("free_x", "fixed"), colors, labels = TRUE, ... )
## S3 method for class 'tna_centralities' plot( x, reorder = TRUE, ncol = 3, scales = c("free_x", "fixed"), colors, labels = TRUE, ... )
x |
An object of class |
reorder |
A |
ncol |
Number of columns to use for the facets. The default is 3. |
scales |
Either |
colors |
The colors for each node (default is the model colors
if the |
labels |
A |
... |
Ignored. |
A ggplot
object displaying the lollipop charts for each centrality
measure.
Core functions
build_model()
,
centralities()
,
plot.tna()
,
plot_compare()
tna_model <- tna(engagement) cm <- centralities(tna_model) plot(cm, ncol = 4, reorder = TRUE)
tna_model <- tna(engagement) cm <- centralities(tna_model) plot(cm, ncol = 4, reorder = TRUE)
Plot Cliques of a TNA Network
## S3 method for class 'tna_cliques' plot( x, n = 6, first = 1, show_loops = FALSE, minimum = 1e-05, mar = rep(5, 4), ask = TRUE, ... )
## S3 method for class 'tna_cliques' plot( x, n = 6, first = 1, show_loops = FALSE, minimum = 1e-05, mar = rep(5, 4), ask = TRUE, ... )
x |
A |
n |
An |
first |
An |
show_loops |
A |
minimum |
See |
mar |
See |
ask |
A |
... |
Ignored. |
NULL
(invisibly).
model <- tna(engagement) cliq <- cliques(model, size = 2) plot(cliq, n = 1)
model <- tna(engagement) cliq <- cliques(model, size = 2) plot(cliq, n = 1)
This function visualizes the communities detected within a tna
object
based on different community detection algorithms and their corresponding
color mappings.
## S3 method for class 'tna_communities' plot(x, cluster = 1L, colors, method = "spinglass", ...)
## S3 method for class 'tna_communities' plot(x, cluster = 1L, colors, method = "spinglass", ...)
x |
A |
cluster |
An |
colors |
A |
method |
A |
... |
Additional arguments passed to qgraph::qgraph.
|
A qgraph
object in which the nodes are colored by community.
Pattern-finding functions
communities()
model <- tna(group_regulation) comm <- communities(model) plot(comm, method = "leading_eigen")
model <- tna(group_regulation) comm <- communities(model) plot(comm, method = "leading_eigen")
Plot the Significant Differences from a Permutation Test
## S3 method for class 'tna_permutation' plot(x, ...)
## S3 method for class 'tna_permutation' plot(x, ...)
x |
A |
... |
Arguments passed to |
A qgraph
object containing only the significant edges according
to the permutation test.
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) # Small number of iterations for CRAN perm <- permutation_test(model_x, model_y, iter = 20) plot(perm)
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) # Small number of iterations for CRAN perm <- permutation_test(model_x, model_y, iter = 20) plot(perm)
This function visualizes the centrality stability results produced by the
estimate_centrality_stability
function. It shows how different centrality
measures' correlations change as varying proportions of cases are dropped,
along with their confidence intervals (CIs).
## S3 method for class 'tna_stability' plot(x, level = 0.05, ...)
## S3 method for class 'tna_stability' plot(x, level = 0.05, ...)
x |
A |
level |
A |
... |
Ignored. |
The function aggregates the results for each centrality measure across multiple proportions of dropped cases (e.g., 0.1, 0.2, ..., 0.9) and calculates the mean and the desired quantiles for each proportion. The confidence intervals (CIs) are computed based on the quantiles and displayed in the plot.
If no valid data is available for a centrality measure (e.g., missing or NA values), the function skips that measure with a warning.
The plot includes:
The mean correlation for each centrality measure as a function of the proportion of dropped cases.
Shaded confidence intervals representing CIs for each centrality measure.
A horizontal dashed line at the threshold value used for calculating the CS-coefficient.
A subtitle listing the CS-coefficients for each centrality measure.
A ggplot
object displaying the stability analysis plot.
model <- tna(engagement) cs <- estimate_cs(model, iter = 10) plot(cs)
model <- tna(engagement) cs <- estimate_cs(model, iter = 10) plot(cs)
group_tna
ObjectPrint a group_tna
Object
## S3 method for class 'group_tna' print(x, ...)
## S3 method for class 'group_tna' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) print(model)
model <- group_model(engagement_mmm) print(model)
group_tna
Bootstrap ResultsPrint group_tna
Bootstrap Results
## S3 method for class 'group_tna_bootstrap' print(x, ...)
## S3 method for class 'group_tna_bootstrap' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) # Low number of iteration for CRAN boot <- bootstrap(model, iter = 10) print(boot)
model <- group_model(engagement_mmm) # Low number of iteration for CRAN boot <- bootstrap(model, iter = 10) print(boot)
Print Centrality Measures
## S3 method for class 'group_tna_centralities' print(x, ...)
## S3 method for class 'group_tna_centralities' print(x, ...)
x |
A |
... |
Ignored. |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) cm <- centralities(model) print(cm)
model <- group_model(engagement_mmm) cm <- centralities(model) print(cm)
Print Found Cliques
## S3 method for class 'group_tna_cliques' print(x, ...)
## S3 method for class 'group_tna_cliques' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) cliq <- cliques(model, size = 2) print(cliq)
model <- group_model(engagement_mmm) cliq <- cliques(model, size = 2) print(cliq)
Print Detected Communities
## S3 method for class 'group_tna_communities' print(x, ...)
## S3 method for class 'group_tna_communities' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) comm <- communities(model) print(comm)
model <- group_model(engagement_mmm) comm <- communities(model) print(comm)
Print Centrality Stability Results
## S3 method for class 'group_tna_stability' print(x, ...)
## S3 method for class 'group_tna_stability' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) # Low number of iterations for CRAN stability <- estimate_cs( model, drop_prop = c(0.3, 0.5, 0.7, 0.9), iter = 10 ) print(stability)
model <- group_model(engagement_mmm) # Low number of iterations for CRAN stability <- estimate_cs( model, drop_prop = c(0.3, 0.5, 0.7, 0.9), iter = 10 ) print(stability)
Print the summary of a grouped Transition Network Analysis Model
## S3 method for class 'summary.group_tna' print(x, ...)
## S3 method for class 'summary.group_tna' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) print(summary(model))
model <- group_model(engagement_mmm) print(summary(model))
Print Bootstrap Summary for a Grouped Transition Network
## S3 method for class 'summary.group_tna_bootstrap' print(x, ...)
## S3 method for class 'summary.group_tna_bootstrap' print(x, ...)
x |
A |
... |
Arguments passed to the generic |
x
(invisibly).
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) # Low number of iteration for CRAN boot <- bootstrap(model, iter = 10) print(summary(boot))
model <- group_model(engagement_mmm) # Low number of iteration for CRAN boot <- bootstrap(model, iter = 10) print(summary(boot))
Print a TNA Summary
## S3 method for class 'summary.tna' print(x, ...)
## S3 method for class 'summary.tna' print(x, ...)
x |
A |
... |
Ignored. |
A summary.tna
object (invisibly) containing the TNA model network
metrics and values.
model <- tna(engagement) print(summary(model))
model <- tna(engagement) print(summary(model))
Print Bootstrap Summary
## S3 method for class 'summary.tna_bootstrap' print(x, ...)
## S3 method for class 'summary.tna_bootstrap' print(x, ...)
x |
A |
... |
Arguments passed to the generic |
A summary.tna_bootstrap
object (invisibly) containing the weight,
p-value and confidence interval of each edge.
model <- tna(engagement) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) print(summary(boot))
model <- tna(engagement) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) print(summary(boot))
tna
objectPrint a tna
object
## S3 method for class 'tna' print(x, digits = getOption("digits"), generic = FALSE, ...)
## S3 method for class 'tna' print(x, digits = getOption("digits"), generic = FALSE, ...)
x |
A |
digits |
An |
generic |
A |
... |
Ignored. |
The tna
object passed as argument x
(invisibly).
model <- tna(engagement) print(model)
model <- tna(engagement) print(model)
Print Bootstrap Results
## S3 method for class 'tna_bootstrap' print(x, digits = getOption("digits"), type = "both", ...)
## S3 method for class 'tna_bootstrap' print(x, digits = getOption("digits"), type = "both", ...)
x |
A |
digits |
An |
type |
A |
... |
Ignored. |
x
(invisibly).
model <- tna(engagement) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) print(boot)
model <- tna(engagement) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) print(boot)
Print Centrality Measures
## S3 method for class 'tna_centralities' print(x, ...)
## S3 method for class 'tna_centralities' print(x, ...)
x |
A |
... |
Ignored. |
x
(invisibly).
model <- tna(engagement) cm <- centralities(model) print(cm)
model <- tna(engagement) cm <- centralities(model) print(cm)
Print Found Cliques of a TNA Network
## S3 method for class 'tna_cliques' print(x, n = 6, first = 1, digits = getOption("digits"), ...)
## S3 method for class 'tna_cliques' print(x, n = 6, first = 1, digits = getOption("digits"), ...)
x |
A |
n |
An |
first |
An |
digits |
An |
... |
Ignored. |
x
(invisibly).
model <- tna(engagement) cliq <- cliques(model, size = 2) print(cliq)
model <- tna(engagement) cliq <- cliques(model, size = 2) print(cliq)
Print Detected Communities
## S3 method for class 'tna_communities' print(x, ...)
## S3 method for class 'tna_communities' print(x, ...)
x |
A |
... |
Ignored. |
x
(invisibly).
model <- tna(engagement) comm <- communities(model) print(comm)
model <- tna(engagement) comm <- communities(model) print(comm)
Print Permutation Test Results
## S3 method for class 'tna_permutation' print(x, ...)
## S3 method for class 'tna_permutation' print(x, ...)
x |
A |
... |
Additional arguments passed to the |
x
(invisibly).
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) # Small number of iterations for CRAN perm <- permutation_test(model_x, model_y, iter = 20) print(perm)
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) # Small number of iterations for CRAN perm <- permutation_test(model_x, model_y, iter = 20) print(perm)
Print Centrality Stability Results
## S3 method for class 'tna_stability' print(x, ...)
## S3 method for class 'tna_stability' print(x, ...)
x |
A |
... |
Ignored. |
x
(invisibly).
model <- tna(engagement) # Small number of iterations and drop proportions for CRAN cs <- estimate_cs( model, measures = c("InStrength", "OutStrength"), drop_prop = seq(0.3, 0.9, by = 0.2), iter = 10 ) print(cs)
model <- tna(engagement) # Small number of iterations and drop proportions for CRAN cs <- estimate_cs( model, measures = c("InStrength", "OutStrength"), drop_prop = seq(0.3, 0.9, by = 0.2), iter = 10 ) print(cs)
tna
network based on transition probabilitiesPrunes a network represented by a tna
object by removing
edges based on a specified threshold, lowest percent of non-zero edge
weights, or the disparity filter algorithm (Serrano et al., 2009).
It ensures the network remains weakly connected.
Prunes a network represented by a tna
object by removing
edges based on a specified threshold, lowest percent of non-zero edge
weights, or the disparity filter algorithm (Serrano et al., 2009).
It ensures the network remains weakly connected.
prune(x, ...) ## S3 method for class 'tna' prune( x, method = "threshold", threshold = 0.1, lowest = 0.05, level = 0.5, boot = NULL, ... ) ## S3 method for class 'group_tna' prune(x, ...)
prune(x, ...) ## S3 method for class 'tna' prune( x, method = "threshold", threshold = 0.1, lowest = 0.05, level = 0.5, boot = NULL, ... ) ## S3 method for class 'group_tna' prune(x, ...)
x |
An object of class |
... |
Arguments passed to |
method |
A |
threshold |
A numeric value specifying the edge weight threshold. Edges with weights below or equal to this threshold will be considered for removal. |
lowest |
A |
level |
A |
boot |
A |
A pruned tna
or group_tna
object. Details on the pruning can be
viewed with pruning_details()
. The original model can be restored with
deprune()
.
Evaluation and validation functions
bootstrap()
,
permutation_test()
,
pruning_details()
Evaluation and validation functions
bootstrap()
,
permutation_test()
,
pruning_details()
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(group_regulation) pruned_threshold <- prune(model, method = "threshold", threshold = 0.1) pruned_percentile <- prune(model, method = "lowest", lowest = 0.05) pruned_disparity <- prune(model, method = "disparity", level = 0.5)
model <- tna(group_regulation) pruned_threshold <- prune(model, method = "threshold", threshold = 0.1) pruned_percentile <- prune(model, method = "lowest", lowest = 0.05) pruned_disparity <- prune(model, method = "disparity", level = 0.5)
Print Detailed Information on the Pruning Results
pruning_details(x, ...) ## S3 method for class 'tna' pruning_details(x, ...) ## S3 method for class 'group_tna' pruning_details(x, ...)
pruning_details(x, ...) ## S3 method for class 'tna' pruning_details(x, ...) ## S3 method for class 'group_tna' pruning_details(x, ...)
x |
A |
... |
Ignored. |
A data.frame
containing the removed edges if x
is a tna
object,
or a list
of data.frame
objects in the case of group_tna
object.
Evaluation and validation functions
bootstrap()
,
permutation_test()
,
prune()
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
rename_groups()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(group_regulation) pruned_threshold <- prune(model, method = "threshold", threshold = 0.1) pruning_details(pruned_threshold)
model <- tna(group_regulation) pruned_threshold <- prune(model, method = "threshold", threshold = 0.1) pruning_details(pruned_threshold)
Rename clusters
rename_groups(x, new_names)
rename_groups(x, new_names)
x |
A |
new_names |
A |
A renamed group_tna
object.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- group_model(engagement_mmm) model_renamed <- rename_groups(model, c("A", "B", "C"))
model <- group_model(engagement_mmm) model_renamed <- rename_groups(model, c("A", "B", "C"))
Restore Previous Pruning of a Transition Network Analysis Model
reprune(x, ...) ## S3 method for class 'group_tna' reprune(x, ...)
reprune(x, ...) ## S3 method for class 'group_tna' reprune(x, ...)
x |
A |
... |
Ignored. |
A tna
or group_tna
object that has not been pruned. The previous
pruning result can be reactivated with reprune()
.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
summary.group_tna()
,
summary.group_tna_bootstrap()
model <- tna(engagement) pruned_model <- prune(model, method = "threshold", threshold = 0.1) depruned_model <- deprune(pruned_model) # restore original model repruned_model <- reprune(depruned_model) # reapply the previous pruning
model <- tna(engagement) pruned_model <- prune(model, method = "threshold", threshold = 0.1) depruned_model <- deprune(pruned_model) # restore original model repruned_model <- reprune(depruned_model) # reapply the previous pruning
This function calculates a variety of network metrics for a tna
object.
It computes key metrics such as node and edge counts, network density,
mean distance, strength measures, degree centrality, and reciprocity.
## S3 method for class 'group_tna' summary(object, combined = TRUE, ...)
## S3 method for class 'group_tna' summary(object, combined = TRUE, ...)
object |
A |
combined |
A logical indicating whether the summary results should be
combined into a single data frame for all clusters (defaults to |
... |
Ignored |
The function extracts the igraph
network for each cluster and
computes the following network metrics:
Node count: Total number of nodes in the network.
Edge count: Total number of edges in the network.
Network density: Proportion of possible edges that are present in the network.
Mean distance: The average shortest path length between nodes.
Mean and standard deviation of out-strength and in-strength: Measures of the total weight of outgoing and incoming edges for each node.
Mean and standard deviation of out-degree: The number of outgoing edges from each node.
Centralization of out-degree and in-degree: Measures of how centralized the network is based on the degrees of nodes.
Reciprocity: The proportion of edges that are reciprocated (i.e., mutual edges between nodes).
A summary.group_tna
object which is a list
of list
s or a
combined data.frame
containing the following network metrics:
node_count
: The total number of nodes.
edge_count
: The total number of edges.
network_Density
: The density of the network.
mean_distance
: The mean shortest path length.
mean_out_strength
: The mean out-strength of nodes.
sd_out_strength
: The standard deviation of out-strength.
mean_in_strength
: The mean in-strength of nodes.
sd_in_strength
: The standard deviation of in-strength.
mean_out_degree
: The mean out-degree of nodes.
sd_out_degree
: The standard deviation of out-degree.
centralization_out_degree
: The centralization of out-degree.
centralization_in_degree
: The centralization of in-degree.
reciprocity
: The reciprocity of the network.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna_bootstrap()
group <- c(rep("High", 100), rep("Low", 100)) model <- group_model(engagement, group = group) summary(model)
group <- c(rep("High", 100), rep("Low", 100)) model <- group_model(engagement, group = group) summary(model)
Summarize Bootstrap Results for a Grouped Transition Network
## S3 method for class 'group_tna_bootstrap' summary(object, ...)
## S3 method for class 'group_tna_bootstrap' summary(object, ...)
object |
A |
... |
Ignored. |
A summary.group_tna_bootstrap
object containing the weight,
p-value and confidence interval of each edge for each cluster.
Cluster-related functions
bootstrap()
,
centralities()
,
cliques()
,
communities()
,
deprune()
,
estimate_cs()
,
group_model()
,
hist.group_tna()
,
mmm_stats()
,
plot.group_tna()
,
plot.group_tna_centralities()
,
plot.group_tna_cliques()
,
plot.group_tna_communities()
,
plot.group_tna_stability()
,
print.group_tna()
,
print.group_tna_bootstrap()
,
print.group_tna_centralities()
,
print.group_tna_cliques()
,
print.group_tna_communities()
,
print.group_tna_stability()
,
print.summary.group_tna()
,
print.summary.group_tna_bootstrap()
,
prune()
,
pruning_details()
,
rename_groups()
,
reprune()
,
summary.group_tna()
model <- group_tna(engagement_mmm) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) summary(boot)
model <- group_tna(engagement_mmm) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) summary(boot)
This function calculates a variety of network metrics for a tna
object.
It computes key metrics such as node and edge counts, network density,
mean distance, strength measures, degree centrality, and reciprocity.
## S3 method for class 'tna' summary(object, ...)
## S3 method for class 'tna' summary(object, ...)
object |
A |
... |
Ignored |
The function extracts the igraph
network and
computes the following network metrics:
Node count: Total number of nodes in the network.
Edge count: Total number of edges in the network.
Network density: Proportion of possible edges that are present in the network.
Mean distance: The average shortest path length between nodes.
Mean and standard deviation of out-strength and in-strength: Measures of the total weight of outgoing and incoming edges for each node.
Mean and standard deviation of out-degree: The number of outgoing edges from each node.
Centralization of out-degree and in-degree: Measures of how centralized the network is based on the degrees of nodes.
Reciprocity: The proportion of edges that are reciprocated (i.e., mutual edges between nodes).
A summary of the metrics is printed to the console.
A named list
containing the following network metrics (invisibly):
node_count
: The total number of nodes.
edge_count
: The total number of edges.
network_Density
: The density of the network.
mean_distance
: The mean shortest path length.
mean_out_strength
: The mean out-strength of nodes.
sd_out_strength
: The standard deviation of out-strength.
mean_in_strength
: The mean in-strength of nodes.
sd_in_strength
: The standard deviation of in-strength.
mean_out_degree
: The mean out-degree of nodes.
sd_out_degree
: The standard deviation of out-degree.
centralization_out_degree
: The centralization of out-degree.
centralization_in_degree
: The centralization of in-degree.
reciprocity
: The reciprocity of the network.
model <- tna(engagement) summary(model)
model <- tna(engagement) summary(model)
Summarize Bootstrap Results
## S3 method for class 'tna_bootstrap' summary(object, ...)
## S3 method for class 'tna_bootstrap' summary(object, ...)
object |
A |
... |
Ignored. |
A summary.tna_bootstrap
object containing the weight,
p-value and confidence interval of each edge.
model <- tna(engagement) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) summary(boot)
model <- tna(engagement) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) summary(boot)