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., 2025) <doi:10.1145/3706468.3706513> for more details on TNA. |
Authors: | Mohammed Saqr [aut], Santtu Tikka [aut], Sonsoles López-Pernas [aut, cre] |
Maintainer: | Sonsoles López-Pernas <[email protected]> |
License: | MIT + file LICENSE |
Version: | 0.4.6 |
Built: | 2025-03-26 13:34:09 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, Mohammed Saqr
Saqr M., López-Pernas S., Törmänen T., Kaliisa R., Misiejuk K., Tikka S. (2025). Transition Network Analysis: A Novel Framework for Modeling, Visualizing, and Identifying the Temporal Patterns of Learners and Learning Processes. In Proceedings of the 15th International Learning Analytics and Knowledge Conference (LAK '25), 351-361.
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:
Report bugs at https://github.com/sonsoleslp/tna/issues/
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
group_tna
Object into an igraph
Object.Coerce a Specific Group from a group_tna
Object into 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.
Helper functions
as.igraph.matrix()
,
as.igraph.tna()
igraph
Object.Coerce a Weight Matrix into an igraph
Object.
## S3 method for class 'matrix' as.igraph(x, mode = "directed", ...)
## S3 method for class 'matrix' as.igraph(x, mode = "directed", ...)
x |
A |
mode |
Character scalar, specifies how igraph should interpret the
supplied matrix. See also the |
... |
Ignored. |
An igraph
object.
Helper functions
as.igraph.group_tna()
,
as.igraph.tna()
tna
Object into an igraph
Object.Coerce a tna
Object into an igraph
Object.
## S3 method for class 'tna' as.igraph(x, mode = "directed", ...)
## S3 method for class 'tna' as.igraph(x, mode = "directed", ...)
x |
A |
mode |
Character scalar, specifies how igraph should interpret the
supplied matrix. See also the |
... |
Ignored. |
An igraph
object.
Helper functions
as.igraph.group_tna()
,
as.igraph.matrix()
This function builds a network from a transition matrix in a tna
object
and computes edge betweenness for the network.
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. |
A tna
object where the edge weights are edge betweenness values.
Centrality measure functions
centralities()
,
plot.group_tna_centralities()
,
plot.tna_centralities()
,
print.group_tna_centralities()
,
print.tna_centralities()
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, method = "stability", threshold, consistency_range = c(0.75, 1.25), ... ) ## S3 method for class 'group_tna' bootstrap( x, iter = 1000, level = 0.05, method = "stability", threshold, consistency_range = c(0.75, 1.25), ... )
bootstrap(x, ...) ## S3 method for class 'tna' bootstrap( x, iter = 1000, level = 0.05, method = "stability", threshold, consistency_range = c(0.75, 1.25), ... ) ## S3 method for class 'group_tna' bootstrap( x, iter = 1000, level = 0.05, method = "stability", threshold, consistency_range = c(0.75, 1.25), ... )
x |
A |
... |
Ignored. |
iter |
An |
level |
A |
method |
A |
threshold |
A |
consistency_range |
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 estimates
p-values for each edge and identifies significant edges based on
the specified significance level. A matrix of significant edges
(those with estimated 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 estimated 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.
cr_lower
: The lower bound matrix
of the consistency range for the
edge weights.
cr_upper
: The upper bound matrix
of the consistency range for the
edge weights.
ci_lower
: The lower bound matrix
of the bootstrap confidence
intervals for the edge weights.
ci_upper
: The upper bound matrix
of the bootstrap confidence
intervals for the edge weights.
p_values
: The matrix
of estimated p-values for the edge weights.
summary
: A data.frame
summarizing the edges, their weights,
p-values, statistical significance, consistency ranges, 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.
Validation functions
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) # Small number of iterations for CRAN bootstrap(model, iter = 10)
model <- tna(group_regulation) # Small number of iterations for CRAN bootstrap(model, iter = 10)
Construct a transition network analysis (TNA) model from sequence data. The function takes a data set of sequence of events or states as input and builds a TNA model. It extracts the edge weights and initial probabilities from the data along with the state labels. THe function also accepts weight matrices 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, params = list(), ... ) ## 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), cols = seq(1, ncol(x)), params = list(), ... ) ## S3 method for class 'data.frame' build_model( x, type = "relative", scaling = character(0L), cols = seq(1, ncol(x)), params = list(), ... ) ## S3 method for class 'tna_data' build_model(x, type = "relative", scaling = character(0), params = list(), ...) tna(x, ...) ftna(x, ...) ctna(x, ...) atna(x, ...)
build_model(x, type = "relative", scaling = character(0L), ...) ## Default S3 method: build_model( x, type = "relative", scaling = character(0L), inits, params = list(), ... ) ## 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), cols = seq(1, ncol(x)), params = list(), ... ) ## S3 method for class 'data.frame' build_model( x, type = "relative", scaling = character(0L), cols = seq(1, ncol(x)), params = list(), ... ) ## S3 method for class 'tna_data' build_model(x, type = "relative", scaling = character(0), params = list(), ...) tna(x, ...) ftna(x, ...) ctna(x, ...) atna(x, ...)
x |
A |
type |
A
|
scaling |
A
|
... |
Ignored. For the |
inits |
An optional |
params |
A
|
cols |
An |
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
.
Basic functions
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- build_model(group_regulation) print(model) model <- tna(group_regulation) model <- ftna(group_regulation) model <- ctna(group_regulation) model <- atna(group_regulation)
model <- build_model(group_regulation) print(model) model <- tna(group_regulation) model <- ftna(group_regulation) model <- ctna(group_regulation) model <- atna(group_regulation)
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 tna_centralities
object which is a tibble (tbl_df
).
containing centrality measures for each state.
Centrality measure functions
betweenness_network()
,
plot.group_tna_centralities()
,
plot.tna_centralities()
,
print.group_tna_centralities()
,
print.tna_centralities()
model <- tna(group_regulation) # 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(group_regulation) # 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.
Clique-related functions
plot.group_tna_cliques()
,
plot.tna_cliques()
,
print.group_tna_cliques()
,
print.tna_cliques()
model <- tna(group_regulation) # Find 2-cliques (dyads) cliq <- cliques(model, size = 2) model <- group_tna(engagement_mmm) cliques(model)
model <- tna(group_regulation) # Find 2-cliques (dyads) cliq <- cliques(model, size = 2) model <- group_tna(engagement_mmm) cliques(model)
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, methods, gamma = 1, ...) ## S3 method for class 'group_tna' communities(x, methods, gamma = 1, ...)
communities(x, ...) ## S3 method for class 'tna' communities(x, methods, gamma = 1, ...) ## S3 method for class 'group_tna' communities(x, methods, gamma = 1, ...)
x |
A |
... |
Ignored. |
methods |
A
If not provided, all methods are applied. |
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.
Community detection functions
plot.group_tna_communities()
,
plot.tna_communities()
,
print.group_tna_communities()
,
print.tna_communities()
Cluster-related functions
group_model()
,
mmm_stats()
,
rename_groups()
model <- tna(group_regulation) comm <- communities(model)
model <- tna(group_regulation) comm <- communities(model)
Various distances, measures of dissimilarity and similarity, correlations and other metrics are computed to compare the models. Optionally, the weight matrices of the models can be scaled before comparison. The resulting object can be used to produce heatmap plots and scatterplots to further illustrate the differences.
compare(x, ...) ## S3 method for class 'tna' compare(x, y, scaling = "none", ...) ## S3 method for class 'matrix' compare(x, y, scaling = "none", ...)
compare(x, ...) ## S3 method for class 'tna' compare(x, y, scaling = "none", ...) ## S3 method for class 'matrix' compare(x, y, scaling = "none", ...)
x |
A |
... |
Ignored. |
y |
A |
scaling |
A
|
A tna_comparison
object, which is a list
containing the
following elements:
matrices
: A list
containing the scaled matrices of the input tna
objects or the scaled inputs themselves in the case of matrices.
difference_matrix
: A matrix
of differences x - y
.
edge_metrics
: A data.frame
of edge-level metrics about the differences.
summary_metrics
: A data.frame
of summary metrics of the differences
across all edges.
network_metrics
: A data.frame
of network metrics for both x
and y
.
centrality_differences
: A data.frame
of differences in centrality
measures computes from x
and y
.
centrality_correlations
: A numeric
vector of correlations of the
centrality measures between x
and y
.
Model comparison functions
compare.group_tna()
,
plot.tna_comparison()
,
plot_compare()
,
plot_compare.group_tna()
,
print.tna_comparison()
# Comparing TNA models model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) comp1 <- compare(model_x, model_y) # Comparing matrices mat_x <- model_x$weights mat_y <- model_y$weights comp2 <- compare(mat_x, mat_y) # Comparing a matrix to a TNA model comp3 <- compare(mat_x, model_y)
# Comparing TNA models model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) comp1 <- compare(model_x, model_y) # Comparing matrices mat_x <- model_x$weights mat_y <- model_y$weights comp2 <- compare(mat_x, mat_y) # Comparing a matrix to a TNA model comp3 <- compare(mat_x, model_y)
Compare TNA Clusters with Comprehensive Metrics
## S3 method for class 'group_tna' compare(x, i = 1L, j = 2L, scaling = "none", ...)
## S3 method for class 'group_tna' compare(x, i = 1L, j = 2L, scaling = "none", ...)
x |
A |
i |
An |
j |
An |
scaling |
See |
... |
Additional arguments passed to |
A tna_comparison
object. See compare.tna()
for details.
Model comparison functions
compare()
,
plot.tna_comparison()
,
plot_compare()
,
plot_compare.group_tna()
,
print.tna_comparison()
model <- group_model(engagement_mmm) compare(model, i = 1, j = 2)
model <- group_model(engagement_mmm) compare(model, i = 1, j = 2)
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.
Validation functions
bootstrap()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) pruned_model <- prune(model, method = "threshold", threshold = 0.1) depruned_model <- deprune(pruned_model) # restore original model
model <- tna(group_regulation) 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
Datasets
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/
Datasets
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, 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, 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, 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, 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, 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, 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, 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, progressbar = FALSE, ... )
x |
A |
... |
Ignored. |
loops |
A |
normalize |
A |
measures |
A |
iter |
An |
method |
A |
drop_prop |
A |
threshold |
A |
certainty |
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.
If x
is a group_tna
object, a group_tna_stability
object is returned
instead, which is a list
of tna_stability
objects.
Validation functions
bootstrap()
,
deprune()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) # 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(group_regulation) # 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 )
This function constructs a transition network analysis (TNA) model for each cluster from a given sequence, wide-format dataframe, or a mixture Markov model.
group_model(x, ...) ## Default S3 method: group_model( x, group, type = "relative", scaling = character(0L), groupwise = FALSE, cols, params = list(), na.rm = TRUE, ... ) ## S3 method for class 'mhmm' group_model( x, type = "relative", scaling = character(0L), groupwise = FALSE, cols, params = list(), na.rm = TRUE, ... ) group_tna(x, ...) group_ftna(x, ...) group_ctna(x, ...) group_atna(x, ...)
group_model(x, ...) ## Default S3 method: group_model( x, group, type = "relative", scaling = character(0L), groupwise = FALSE, cols, params = list(), na.rm = TRUE, ... ) ## S3 method for class 'mhmm' group_model( x, type = "relative", scaling = character(0L), groupwise = FALSE, cols, params = list(), na.rm = TRUE, ... ) group_tna(x, ...) group_ftna(x, ...) group_ctna(x, ...) group_atna(x, ...)
x |
An |
... |
Ignored. |
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 |
type |
A
|
scaling |
A
|
groupwise |
A |
cols |
An |
params |
A
|
na.rm |
A |
An object of class group_tna
which is a list
containing one
element per cluster. Each element is a tna
object.
Cluster-related functions
communities()
,
mmm_stats()
,
rename_groups()
# Manually specified groups group <- c(rep("High", 1000), rep("Low", 1000)) model <- group_model(group_regulation, group = group) # Groups defined by a mixed Markov model model <- group_model(engagement_mmm) model <- group_tna(group_regulation, group = gl(2, 1000)) model <- group_ftna(group_regulation, group = gl(2, 1000)) model <- group_ctna(group_regulation, group = gl(2, 1000)) model <- group_atna(group_regulation, group = gl(2, 1000))
# Manually specified groups group <- c(rep("High", 1000), rep("Low", 1000)) model <- group_model(group_regulation, group = group) # Groups defined by a mixed Markov model model <- group_model(engagement_mmm) model <- group_tna(group_regulation, group = gl(2, 1000)) model <- group_ftna(group_regulation, group = gl(2, 1000)) model <- group_ctna(group_regulation, group = gl(2, 1000)) model <- group_atna(group_regulation, group = gl(2, 1000))
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.
Datasets
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.
Basic functions
build_model()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
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.
Basic functions
build_model()
,
hist.group_tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- tna(group_regulation) hist(model)
model <- tna(group_regulation) 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 |
A |
use_t_dist |
A |
level |
A |
A data.frame
object.
Cluster-related functions
communities()
,
group_model()
,
rename_groups()
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, estimated p-values, and confidence intervals.
permutation_test(x, ...) ## S3 method for class 'tna' permutation_test( x, y, adjust = "none", iter = 1000, paired = FALSE, level = 0.05, measures = character(0), ... )
permutation_test(x, ...) ## S3 method for class 'tna' permutation_test( x, y, adjust = "none", iter = 1000, paired = FALSE, level = 0.05, measures = character(0), ... )
x |
A |
... |
Additional arguments passed to |
y |
A |
adjust |
A |
iter |
An |
paired |
A |
level |
A |
measures |
A |
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, effect sizes, and
estimated p-values for each edge or centrality measure. The effect size
is computed as the observed difference divided by the standard deviation
of the differences of the permuted samples.
diffs_true
: A matrix
of differences in the data.
diffs_sig
: A matrix
showing the significant differences.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
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)
Test edge weight differences between all pairs or a subset of pairs of
a group_tna
object. See permutation_test.tna()
for more details.
## S3 method for class 'group_tna' permutation_test( x, groups, adjust = "none", iter = 1000, paired = FALSE, level = 0.05, measures = character(0), ... )
## S3 method for class 'group_tna' permutation_test( x, groups, adjust = "none", iter = 1000, paired = FALSE, level = 0.05, measures = character(0), ... )
x |
A |
groups |
An |
adjust |
A |
iter |
An |
paired |
A |
level |
A |
measures |
A |
... |
Additional arguments passed to |
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- group_model(engagement_mmm) # Small number of iterations for CRAN permutation_test(model, iter = 20)
model <- group_model(engagement_mmm) # Small number of iterations for CRAN permutation_test(model, 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, ...) ## S3 method for class 'tna' plot_compare( x, y, theme = NULL, palette = "colorblind", posCol = "#009900", negCol = "red", ... )
plot_compare(x, ...) ## S3 method for class 'tna' plot_compare( x, y, theme = NULL, palette = "colorblind", posCol = "#009900", negCol = "red", ... )
x |
A |
... |
Additional arguments passed to |
y |
A |
theme |
See |
palette |
See |
posCol |
Color for plotting edges and pie when
the first group has a higher value. See |
negCol |
Color for plotting edges and pie when
the second group has a higher value. See |
A qgraph
object displaying the difference network between the
two models.
Model comparison functions
compare()
,
compare.group_tna()
,
plot.tna_comparison()
,
plot_compare.group_tna()
,
print.tna_comparison()
model_x <- tna(group_regulation[group_regulation[, 1] == "plan", ]) model_y <- tna(group_regulation[group_regulation[, 1] != "plan", ]) plot_compare(model_x, model_y)
model_x <- tna(group_regulation[group_regulation[, 1] == "plan", ]) model_y <- tna(group_regulation[group_regulation[, 1] != "plan", ]) plot_compare(model_x, model_y)
Plot the Difference Network Between Two Clusters
## S3 method for class 'group_tna' plot_compare(x, i = 1L, j = 2L, ...)
## S3 method for class 'group_tna' plot_compare(x, i = 1L, j = 2L, ...)
x |
A |
i |
An |
j |
An |
... |
Additional arguments passed to |
A qgraph
object displaying the difference network between the
two clusters
Model comparison functions
compare()
,
compare.group_tna()
,
plot.tna_comparison()
,
plot_compare()
,
print.tna_comparison()
model <- group_model(engagement_mmm) plot_compare(model)
model <- group_model(engagement_mmm) plot_compare(model)
Plot the Frequency Distribution of States
plot_frequencies(x, ...) ## S3 method for class 'tna' plot_frequencies(x, ...)
plot_frequencies(x, ...) ## S3 method for class 'tna' plot_frequencies(x, ...)
x |
A |
... |
Ignored. |
A ggplot
object.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- tna(group_regulation) plot_frequencies(model)
model <- tna(group_regulation) plot_frequencies(model)
Plot the Frequency Distribution of States
## S3 method for class 'group_tna' plot_frequencies(x, label, ...)
## S3 method for class 'group_tna' plot_frequencies(x, label, ...)
x |
A |
label |
An optional |
... |
Ignored. |
A ggplot
object.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- group_model(engagement_mmm) plot_frequencies(model)
model <- group_model(engagement_mmm) plot_frequencies(model)
Create a Mosaic Plot of Transitions or Events
plot_mosaic(x, ...) ## S3 method for class 'tna' plot_mosaic(x, digits = 1, ...)
plot_mosaic(x, ...) ## S3 method for class 'tna' plot_mosaic(x, digits = 1, ...)
x |
A |
... |
Ignored. |
digits |
An |
A ggplot
object.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
ftna_model <- ftna(group_regulation) plot_mosaic(ftna_model)
ftna_model <- ftna(group_regulation) plot_mosaic(ftna_model)
Plot State Frequencies as a Mosaic Between Two Groups
## S3 method for class 'group_tna' plot_mosaic(x, label, digits = 1, ...)
## S3 method for class 'group_tna' plot_mosaic(x, label, digits = 1, ...)
x |
A |
label |
An optional |
digits |
An |
... |
Ignored. |
A ggplot
object.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- group_model(engagement_mmm) plot_mosaic(model)
model <- group_model(engagement_mmm) plot_mosaic(model)
Plot State Frequencies as a Mosaic Between Two Groups
## S3 method for class 'tna_data' plot_mosaic(x, group, label = "Group", digits = 1, ...)
## S3 method for class 'tna_data' plot_mosaic(x, group, label = "Group", digits = 1, ...)
x |
A |
group |
A |
label |
An optional |
digits |
An |
... |
Ignored. |
A ggplot
object.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
d <- data.frame( time = rep(1:5, rep = 4), group = rep(1:4, each = 5), event = sample(LETTERS[1:3], 20, replace = TRUE) ) sequence_data <- prepare_data( d, time = "time", actor = "group", action = "event" ) plot_mosaic(sequence_data, group = "group")
d <- data.frame( time = rep(1:5, rep = 4), group = rep(1:4, each = 5), event = sample(LETTERS[1:3], 20, replace = TRUE) ) sequence_data <- prepare_data( d, time = "time", actor = "group", action = "event" ) plot_mosaic(sequence_data, group = "group")
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).
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- group_model(engagement_mmm) plot(model)
model <- group_model(engagement_mmm) plot(model)
Plot a Bootstrapped Grouped Transition Network Analysis Model
## S3 method for class 'group_tna_bootstrap' plot(x, ...)
## S3 method for class 'group_tna_bootstrap' plot(x, ...)
x |
A |
... |
Additional arguments passed to |
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- group_model(engagement_mmm) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) plot(boot)
model <- group_model(engagement_mmm) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) plot(boot)
Plot Centrality Measures
## S3 method for class 'group_tna_centralities' plot( x, reorder = TRUE, ncol = 3, scales = c("free_x", "fixed"), colors, labels = TRUE, ... )
## S3 method for class 'group_tna_centralities' plot( x, reorder = TRUE, ncol = 3, 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.
Centrality measure functions
betweenness_network()
,
centralities()
,
plot.tna_centralities()
,
print.group_tna_centralities()
,
print.tna_centralities()
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
.
Clique-related functions
cliques()
,
plot.tna_cliques()
,
print.group_tna_cliques()
,
print.tna_cliques()
model <- group_model(engagement_mmm) cliq <- cliques(model, size = 2) plot(cliq, ask = F)
model <- group_model(engagement_mmm) cliq <- cliques(model, size = 2) plot(cliq, ask = F)
Plot Detected 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.
Community detection functions
communities()
,
plot.tna_communities()
,
print.group_tna_communities()
,
print.tna_communities()
model <- group_model(engagement_mmm) comm <- communities(model) plot(comm)
model <- group_model(engagement_mmm) comm <- communities(model) plot(comm)
Plot Permutation Test Results
## S3 method for class 'group_tna_permutation' plot(x, ...)
## S3 method for class 'group_tna_permutation' plot(x, ...)
x |
A |
... |
Arguments passed to |
A list
(invisibly) of qgraph
objects depicting the significant
difference between each pair.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- group_tna(engagement_mmm) # Small number of iterations for CRAN perm <- permutation_test(model, iter = 20) plot(perm)
model <- group_tna(engagement_mmm) # Small number of iterations for CRAN perm <- permutation_test(model, iter = 20) plot(perm)
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.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.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, cut, show_pruned = TRUE, pruned_edge_color = "pink", edge.color = NA, edge.labels = TRUE, edge.label.position = 0.65, layout = "circle", layout_args = list(), mar = rep(5, 4), theme = "colorblind", ... )
## S3 method for class 'tna' plot( x, labels, colors, pie, cut, show_pruned = TRUE, pruned_edge_color = "pink", edge.color = NA, edge.labels = TRUE, edge.label.position = 0.65, layout = "circle", layout_args = list(), mar = rep(5, 4), theme = "colorblind", ... )
x |
A |
labels |
See |
colors |
See |
pie |
See |
cut |
Edge color and width emphasis cutoff value. The default is
the median of the edge weights. See |
show_pruned |
A |
pruned_edge_color |
A |
edge.color |
See |
edge.labels |
See |
edge.label.position |
See |
layout |
One of the following:
|
layout_args |
A |
mar |
See |
theme |
See |
... |
Additional arguments passed to |
A qgraph
plot of the transition network.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- tna(group_regulation) plot(model)
model <- tna(group_regulation) plot(model)
Plot a Bootstrapped Transition Network Analysis Model
## S3 method for class 'tna_bootstrap' plot(x, ...)
## S3 method for class 'tna_bootstrap' plot(x, ...)
x |
A |
... |
Additional arguments passed to |
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) plot(boot)
model <- tna(group_regulation) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) plot(boot)
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.
Centrality measure functions
betweenness_network()
,
centralities()
,
plot.group_tna_centralities()
,
print.group_tna_centralities()
,
print.tna_centralities()
tna_model <- tna(group_regulation) cm <- centralities(tna_model) plot(cm, ncol = 3, reorder = TRUE)
tna_model <- tna(group_regulation) cm <- centralities(tna_model) plot(cm, ncol = 3, reorder = TRUE)
Plot Cliques of a TNA Network
## S3 method for class 'tna_cliques' plot( x, n = 6, first = 1, show_loops = FALSE, edge.labels = TRUE, edge.label.position = 0.65, minimum = 1e-05, mar = rep(5, 4), layout = "circle", layout_args = list(), cut = 0.01, normalize = TRUE, ask = TRUE, colors, theme = "colorblind", ... )
## S3 method for class 'tna_cliques' plot( x, n = 6, first = 1, show_loops = FALSE, edge.labels = TRUE, edge.label.position = 0.65, minimum = 1e-05, mar = rep(5, 4), layout = "circle", layout_args = list(), cut = 0.01, normalize = TRUE, ask = TRUE, colors, theme = "colorblind", ... )
x |
A |
n |
An |
first |
An |
show_loops |
A |
edge.labels |
See |
edge.label.position |
See |
minimum |
See |
mar |
See |
layout |
One of the following:
|
layout_args |
A |
cut |
See |
normalize |
See |
ask |
A |
colors |
See |
theme |
See |
... |
Ignored. |
NULL
(invisibly).
Clique-related functions
cliques()
,
plot.group_tna_cliques()
,
print.group_tna_cliques()
,
print.tna_cliques()
model <- tna(group_regulation) cliq <- cliques(model, size = 2) plot(cliq, n = 1, ask = FALSE)
model <- tna(group_regulation) cliq <- cliques(model, size = 2) plot(cliq, n = 1, ask = FALSE)
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, colors, method = "spinglass", ...)
## S3 method for class 'tna_communities' plot(x, colors, method = "spinglass", ...)
x |
A |
colors |
A |
method |
A |
... |
Additional arguments passed to |
A qgraph
object in which the nodes are colored by community.
Community detection functions
communities()
,
plot.group_tna_communities()
,
print.group_tna_communities()
,
print.tna_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 Comparison of Two TNA Models or Matrices
## S3 method for class 'tna_comparison' plot( x, type = "heatmap", population = "difference", method = "pearson", name_x = "x", name_y = "y", ... )
## S3 method for class 'tna_comparison' plot( x, type = "heatmap", population = "difference", method = "pearson", name_x = "x", name_y = "y", ... )
x |
A |
type |
A |
population |
A |
method |
A |
name_x |
An optional |
name_y |
An optional |
... |
Ignored. |
A ggplot
object.
Szekely, G.J., Rizzo, M.L., and Bakirov, N.K. (2007), Measuring and Testing Dependence by Correlation of Distances, Annals of Statistics, Vol. 35 No. 6, pp. 2769-2794. doi:10.1214/009053607000000505
Model comparison functions
compare()
,
compare.group_tna()
,
plot_compare()
,
plot_compare.group_tna()
,
print.tna_comparison()
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) comp <- compare(model_x, model_y) plot(comp)
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) comp <- compare(model_x, model_y) plot(comp)
Plot the Significant Differences from a Permutation Test
## S3 method for class 'tna_permutation' plot(x, colors, posCol = "#009900", negCol = "red", ...)
## S3 method for class 'tna_permutation' plot(x, colors, posCol = "#009900", negCol = "red", ...)
x |
A |
colors |
See |
posCol |
Color for plotting edges
the difference in edge weights is positive. See |
negCol |
Color for plotting edges when
the the difference in edge weights is negative. See |
... |
Arguments passed to |
A qgraph
object containing only the significant edges according
to the permutation test.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
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.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) cs <- estimate_cs(model, iter = 10) plot(cs)
model <- tna(group_regulation) cs <- estimate_cs(model, iter = 10) plot(cs)
Processes a dataset to create user sessions based on time gaps, ordering columns, or actor groupings. It supports different ways to understand order in user behavior and provides flexibility when widening the data.
prepare_data( data, actor, time, action, order, time_threshold = 900, custom_format = NULL, is_unix_time = FALSE, unix_time_unit = "seconds", unused_fn = dplyr::first )
prepare_data( data, actor, time, action, order, time_threshold = 900, custom_format = NULL, is_unix_time = FALSE, unix_time_unit = "seconds", unused_fn = dplyr::first )
data |
A |
actor |
A |
time |
A |
action |
A |
order |
A |
time_threshold |
An |
custom_format |
A |
is_unix_time |
A |
unix_time_unit |
A |
unused_fn |
How to handle extra columns when pivoting to wide format.
See |
A tna_data
object, which is a list
with the following elements:
long_data
: The processed data in long format.
sequence_data
: The processed data on the sequences in wide format,
with actions/events as different variables structured with sequences.
meta_data
: Other variables from the original data in wide format.
statistics
: A list
containing summary statistics: total
sessions, total actions, unique users, time range (if applicable), and
top sessions and user by activities.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
data <- tibble::tibble( user = c("A", "A", "A", "B", "B", "C", "C", "C"), time = c( "2023-01-01 10:00:00", "2023-01-01 10:05:00", "2023-01-01 10:20:00", "2023-01-01 12:00:00", "2023-01-01 12:02:00", "2023-01-01 14:00:00", "2023-01-01 14:05:00", "2023-01-01 14:10:00" ), action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results <- prepare_data( data, actor = "user", time = "time", action = "action" ) print(results$sequence_data) print(results$meta_data) print(results$statistics) data_ordered <- tibble::tibble( user = c("A", "A", "A", "B", "B", "C", "C", "C"), order = c(1, 2, 3, 1, 2, 1, 2, 3), action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results_ordered <- prepare_data( data_ordered, actor = "user", order = "order", action = "action" ) print(results_ordered$sequence_data) print(results_ordered$meta_data) print(results_ordered$statistics) data_single_session <- tibble::tibble( action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results_single <- prepare_data(data_single_session, action = "action") print(results_single$sequence_data) print(results_single$meta_data) print(results_single$statistics)
data <- tibble::tibble( user = c("A", "A", "A", "B", "B", "C", "C", "C"), time = c( "2023-01-01 10:00:00", "2023-01-01 10:05:00", "2023-01-01 10:20:00", "2023-01-01 12:00:00", "2023-01-01 12:02:00", "2023-01-01 14:00:00", "2023-01-01 14:05:00", "2023-01-01 14:10:00" ), action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results <- prepare_data( data, actor = "user", time = "time", action = "action" ) print(results$sequence_data) print(results$meta_data) print(results$statistics) data_ordered <- tibble::tibble( user = c("A", "A", "A", "B", "B", "C", "C", "C"), order = c(1, 2, 3, 1, 2, 1, 2, 3), action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results_ordered <- prepare_data( data_ordered, actor = "user", order = "order", action = "action" ) print(results_ordered$sequence_data) print(results_ordered$meta_data) print(results_ordered$statistics) data_single_session <- tibble::tibble( action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results_single <- prepare_data(data_single_session, action = "action") print(results_single$sequence_data) print(results_single$meta_data) print(results_single$statistics)
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).
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
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).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.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).
Centrality measure functions
betweenness_network()
,
centralities()
,
plot.group_tna_centralities()
,
plot.tna_centralities()
,
print.tna_centralities()
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).
Clique-related functions
cliques()
,
plot.group_tna_cliques()
,
plot.tna_cliques()
,
print.tna_cliques()
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).
Community detection functions
communities()
,
plot.group_tna_communities()
,
plot.tna_communities()
,
print.tna_communities()
model <- group_model(engagement_mmm) comm <- communities(model) print(comm)
model <- group_model(engagement_mmm) comm <- communities(model) print(comm)
Print Permutation Test Results
## S3 method for class 'group_tna_permutation' print(x, ...)
## S3 method for class 'group_tna_permutation' print(x, ...)
x |
A |
... |
Arguments passed to |
x
(invisibly).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- group_model(engagement_mmm) # Small number of iterations for CRAN perm <- permutation_test(model, iter = 20) print(perm)
model <- group_model(engagement_mmm) # Small number of iterations for CRAN perm <- permutation_test(model, iter = 20) print(perm)
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).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.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 a 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).
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- group_model(engagement_mmm) print(summary(model))
model <- group_model(engagement_mmm) print(summary(model))
Print a Bootstrap Summary for a Grouped Transition Network Model
## 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).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.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.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- tna(group_regulation) print(summary(model))
model <- tna(group_regulation) print(summary(model))
Print a 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,
estimated p-value and confidence interval of each edge.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) print(summary(boot))
model <- tna(group_regulation) # 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).
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- tna(group_regulation) print(model)
model <- tna(group_regulation) 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).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 10) print(boot)
model <- tna(group_regulation) # 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).
Centrality measure functions
betweenness_network()
,
centralities()
,
plot.group_tna_centralities()
,
plot.tna_centralities()
,
print.group_tna_centralities()
model <- tna(group_regulation) cm <- centralities(model) print(cm)
model <- tna(group_regulation) 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).
Clique-related functions
cliques()
,
plot.group_tna_cliques()
,
plot.tna_cliques()
,
print.group_tna_cliques()
model <- tna(group_regulation) cliq <- cliques(model, size = 2) print(cliq)
model <- tna(group_regulation) 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).
Community detection functions
communities()
,
plot.group_tna_communities()
,
plot.tna_communities()
,
print.group_tna_communities()
model <- tna(group_regulation) comm <- communities(model) print(comm)
model <- tna(group_regulation) comm <- communities(model) print(comm)
Print Comparison Results
## S3 method for class 'tna_comparison' print(x, ...)
## S3 method for class 'tna_comparison' print(x, ...)
x |
A |
... |
Additional arguments passed to the tibble |
x
(invisibly).
Model comparison functions
compare()
,
compare.group_tna()
,
plot.tna_comparison()
,
plot_compare()
,
plot_compare.group_tna()
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) comp <- compare(model_x, model_y) print(comp)
model_x <- tna(group_regulation[1:200, ]) model_y <- tna(group_regulation[1001:1200, ]) comp <- compare(model_x, model_y) print(comp)
Print a TNA Data Object
## S3 method for class 'tna_data' print(x, data = "sequence", ...)
## S3 method for class 'tna_data' print(x, data = "sequence", ...)
x |
A |
data |
A |
... |
Arguments passed to the tibble |
x
(invisibly).
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
simulate.tna()
,
summary.group_tna()
,
summary.tna()
,
tna-package
data_single_session <- tibble::tibble( action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results_single <- prepare_data(data_single_session, action = "action") print(results_single, which = "sequence") print(results_single, which = "meta") print(results_single, which = "long")
data_single_session <- tibble::tibble( action = c( "view", "click", "add_cart", "view", "checkout", "view", "click", "share" ) ) results_single <- prepare_data(data_single_session, action = "action") print(results_single, which = "sequence") print(results_single, which = "meta") print(results_single, which = "long")
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).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
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).
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) # 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(group_regulation) # 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)
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.
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()
.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.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.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
reprune()
,
summary.group_tna_bootstrap()
,
summary.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
communities()
,
group_model()
,
mmm_stats()
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()
.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
summary.group_tna_bootstrap()
,
summary.tna_bootstrap()
model <- tna(group_regulation) 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(group_regulation) 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
Simulate Data from a Transition Network Analysis Model
## S3 method for class 'tna' simulate( object, nsim = 1, seed = NULL, max_len = 100L, na_range = c(0L, 0L), ... )
## S3 method for class 'tna' simulate( object, nsim = 1, seed = NULL, max_len = 100L, na_range = c(0L, 0L), ... )
object |
A |
nsim |
An |
seed |
Ignored. Please use |
max_len |
An |
na_range |
An |
... |
Ignored. |
A data.frame
of the simulated sequence data with nsim
rows and
max_len
columns.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
summary.group_tna()
,
summary.tna()
,
tna-package
model <- tna(group_regulation) sim <- simulate(model, nsim = 10, max_len = 10)
model <- tna(group_regulation) sim <- simulate(model, nsim = 10, max_len = 10)
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.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.tna()
,
tna-package
group <- c(rep("High", 1000), rep("Low", 1000)) model <- group_model(group_regulation, group = group) summary(model)
group <- c(rep("High", 1000), rep("Low", 1000)) model <- group_model(group_regulation, 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,
estimated p-value and confidence interval of each edge for each cluster.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.tna_bootstrap()
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.
Basic functions
build_model()
,
hist.group_tna()
,
hist.tna()
,
plot.group_tna()
,
plot.tna()
,
plot_frequencies()
,
plot_frequencies.group_tna()
,
plot_mosaic()
,
plot_mosaic.group_tna()
,
plot_mosaic.tna_data()
,
prepare_data()
,
print.group_tna()
,
print.summary.group_tna()
,
print.summary.tna()
,
print.tna()
,
print.tna_data()
,
simulate.tna()
,
summary.group_tna()
,
tna-package
model <- tna(group_regulation) summary(model)
model <- tna(group_regulation) 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,
estimated p-value and confidence interval of each edge.
Validation functions
bootstrap()
,
deprune()
,
estimate_cs()
,
permutation_test()
,
permutation_test.group_tna()
,
plot.group_tna_bootstrap()
,
plot.group_tna_permutation()
,
plot.group_tna_stability()
,
plot.tna_bootstrap()
,
plot.tna_permutation()
,
plot.tna_stability()
,
print.group_tna_bootstrap()
,
print.group_tna_permutation()
,
print.group_tna_stability()
,
print.summary.group_tna_bootstrap()
,
print.summary.tna_bootstrap()
,
print.tna_bootstrap()
,
print.tna_permutation()
,
print.tna_stability()
,
prune()
,
pruning_details()
,
reprune()
,
summary.group_tna_bootstrap()
model <- tna(group_regulation) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) summary(boot)
model <- tna(group_regulation) # Small number of iterations for CRAN boot <- bootstrap(model, iter = 50) summary(boot)