build_htna() now explicitly consumes the fitted net_mmm object returned
by Nestimate::cluster_mmm(). It materializes one HTNA network per fitted
sequence cluster without rerunning MMM and preserves assignments, posterior
probabilities, mixing proportions, information criteria, fitted weights,
and the original actor partition.Nestimate::as_htna() now supports the same fitted net_mmm input and
returns an equivalent htna_group. Nestimate::cluster_network() remains
the function that directly returns materialized cluster networks.human_simplified and ai_simplified, ready
for the named-list form of build_htna().human_ai_codebook, ready to pass as
node_groups to build_htna().human_ai gains a phase factor column tagging each session as
"Early" or "Late" (chronological split), so grouped examples can call
build_htna(human_ai, group = "phase") without pre-processing.htna_palette is now exported (previously an internal constant referenced
as a default argument in exported plot functions).build_htna() covering
Nestimate::build_clusters() and Nestimate::cluster_mmm(), model
selection with cluster_choice() / compare_mmm() /
cluster_diagnostics(), and cohort-pair comparison with compare_htna().compare_htna(), an actor-aware wrapper over
Nestimate::compare_model(). It aligns partial node coverage, annotates every
edge with source and target actors, reports summaries for each actor-pair
block, retains the original HTNA networks, and compares every cohort pair
when passed an htna_group.as.igraph() methods for htna and htna_group. Converted graphs
preserve actor types as vertex attributes and canonical actor ordering as
graph metadata; grouped inputs convert every cohort.summary.htna() and summary.htna_group() now include Nestimate's standard
network-level descriptive metrics alongside the existing actor-partition and
actor-to-actor edge summaries.build_htna(method = "co_occurrence") is now documented and covered across
all constructor forms, grouped networks, MCML expansion, Nestimate distance
clustering, and legacy TNA clustering, with numerical equivalence tests
against both Nestimate and tna::ctna().build_htna() now accepts a fitted Nestimate::build_mcml() object. The
MCML node clusters become actor groups, and one full node-level HTNA is
rebuilt from the retained or explicitly supplied original source. This is
equivalent to Nestimate::as_htna(): it intentionally preserves global
cross-cluster transitions rather than stitching together fitted macro or
within-cluster weights.$node_groups$group and a factor with the full actor level set in
$nodes$groups.tna clustering results, including actor-partition preservation and
no-refit guarantees.build_htna() now consumes Nestimate distance clustering
(net_clustering), fitted MMM clustering (cluster_mmm() / net_mmm),
materialized cluster networks (netobject_group), and legacy
tna::cluster_sequences() results. It returns
an htna_group, restores the actor partition on every child, and preserves
clustering assignments, posterior probabilities, diagnostics, and fitted
MMM weights. A partition preserved upstream is used automatically; older or
independently-created clustering results can supply node_groups.Six htna-named functions are added, extending htna's coverage of the major
transition-network-analysis (tna) verbs. All are thin ...-forwarding wrappers
over the 'Nestimate' engine and follow the same durable design as the existing
re-exports (stable documented formals; new engine arguments flow through ...).
prune_htna(), deprune_htna(), reprune_htna(), and
pruning_details_htna() (over Nestimate::net_prune() and friends). The
actor partition and htna class are preserved across pruning, so the pruned
network stays htna-aware and plots with [plot_htna()].bayes_compare_htna() — Bayesian complement of permutation_htna() (over
Nestimate::bayes_compare()). Preserves the actor partition on $x/$y and
carries class net_permutation, so it renders with plot_htna_diff().certainty_htna() — closed-form counterpart of bootstrap_htna() (over
Nestimate::certainty()), joining the confirmatory-analysis family alongside
reliability_htna() and casedrop_reliability_htna().permutation_htna(),
association_rules_htna(), casedrop_reliability_htna(),
markov_order_test_htna(), state_distribution_htna(),
state_frequencies_htna()) are now thin ...-forwarding wrappers
instead of direct aliases. Their documented formals are fixed, so a
future change to any of these functions' signatures in Nestimate can
no longer produce a code/documentation-mismatch (codoc) WARNING in
R CMD check. No behavioural change: each call forwards unchanged to
Nestimate (including S3 dispatch for state_distribution_htna()), and
extra arguments pass straight through ....sequence_compare_htna() no longer restates Nestimate's sequence_compare()
arguments (sub, min_freq, test, iter, adjust) as its own formals;
they now pass through .... Its signature is x, group, level, ... — the
htna-specific level argument is retained. Same defaults and behaviour, but
new Nestimate arguments flow through automatically and the code/documentation
coupling is removed. mosaic_plot_htna()'s documentation is likewise
decoupled from Nestimate's signature (it was already a ... wrapper).Nestimate::permutation() gained a
measures argument (for centrality permutation tests); since
permutation_htna() re-exports that function, its documentation is
regenerated to include the new argument, resolving a code/documentation
mismatch flagged by R CMD check. No behavioural change.Imports: Nestimate (>= 0.8.0).build_htna().Nestimate and cograph
downstream functions under _htna-suffixed aliases so callers do
not need to attach Nestimate or cograph explicitly:
permutation_htna(), casedrop_reliability_htna(),
markov_order_test_htna(), mosaic_plot_htna(),
state_distribution_htna(), state_frequencies_htna(),
association_rules_htna(), sequence_compare_htna().frequencies_htna(), plot_frequencies_htna() (treemap / bars /
facet views), centralities_htna(), plot_centralities(),
plot_htna(), plot_htna_bootstrap(), plot_htna_diff(),
sequence_plot_htna(), reliability_htna(),
centrality_stability_htna(), edge_betweenness_htna(),
extract_meta_paths() (state-level by default; level = "type" for
the type-level meta-path rollup; supports schemas mixing types,
concrete codes, and *).