From 6e66c6ddbec29f27979195bd7246fda812c52033 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 12 Apr 2026 20:12:24 +0000 Subject: [PATCH 1/8] Add coev_ancestral_states() with tests (single-tree, latent scale) Implements the core extraction function for ancestral state reconstruction. Extracts posterior draws of eta at internal nodes, maps them to tree node IDs, and returns either a summary tibble (median + CIs, ggtree-compatible) or raw draws. Single-tree path only for now. Response scale and multi-tree support to follow. Tests cover: input validation, output structure, node selection (internal/all/specific), variable subsetting, CI width, summary vs draws mode, and all single-tree fixture models. https://claude.ai/code/session_01J6wGw5nJjfG1Eavh4pq9kR --- NAMESPACE | 1 + R/coev_ancestral_states.R | 252 ++++++++++++++++++++ tests/testthat/test-coev_ancestral_states.R | 195 +++++++++++++++ 3 files changed, 448 insertions(+) create mode 100644 R/coev_ancestral_states.R create mode 100644 tests/testthat/test-coev_ancestral_states.R diff --git a/NAMESPACE b/NAMESPACE index 8efd041..ab2d12b 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -10,6 +10,7 @@ S3method(stancode,coevfit) S3method(standata,coevfit) S3method(summary,coevfit) S3method(summary,nutpie_fit) +export(coev_ancestral_states) export(coev_calculate_delta_theta) export(coev_calculate_theta) export(coev_fit) diff --git a/R/coev_ancestral_states.R b/R/coev_ancestral_states.R new file mode 100644 index 0000000..5de0a0d --- /dev/null +++ b/R/coev_ancestral_states.R @@ -0,0 +1,252 @@ +#' Extract ancestral state estimates from a fitted coevolutionary model +#' +#' Extracts posterior estimates of latent trait values at internal nodes +#' of the phylogenetic tree from a fitted \code{coevfit} object. The latent +#' \code{eta} parameters in the model correspond directly to nodes in the +#' phylogeny, making ancestral state reconstruction a natural byproduct of +#' the model fitting process. +#' +#' @param object An object of class \code{coevfit} +#' @param variables (optional) A character vector of variable names to include. +#' If \code{NULL} (default), all variables from the fitted model are included. +#' @param nodes Which nodes to include. Either \code{"internal"} (default) for +#' internal nodes only, \code{"all"} for both tips and internal nodes, or an +#' integer vector of specific node IDs (using ape's node numbering convention +#' where tips are 1:N_tips and internal nodes are (N_tips+1):(N_tips+N_internal)). +#' @param tree_id (optional) An integer indicating which tree to use when the +#' model was fit with a \code{multiPhylo} object. If \code{NULL} (default), +#' uses tree 1 when only one tree is present, or integrates over trees when +#' multiple trees are present. +#' @param scale Character string, either \code{"latent"} (default) to return +#' values on the latent eta scale, or \code{"response"} to apply the inverse +#' link function for each variable's response distribution. +#' @param summary Logical. If \code{TRUE} (default), returns a summary data +#' frame with posterior median and credible intervals. If \code{FALSE}, +#' returns the raw posterior draws. +#' @param prob A single numeric value between 0 and 1 indicating the desired +#' probability mass for the credible interval. Default is 0.95. +#' +#' @returns If \code{summary = TRUE}, a data frame (tibble) with columns: +#' \describe{ +#' \item{node}{Integer node ID in the reference tree} +#' \item{variable}{Character variable name} +#' \item{estimate}{Posterior median} +#' \item{lower}{Lower bound of the credible interval} +#' \item{upper}{Upper bound of the credible interval} +#' \item{clade_pp}{Clade posterior probability (1.0 for single-tree models)} +#' } +#' The data frame has attributes \code{ref_tree} (the phylo object used), +#' \code{prob}, and \code{scale}. The format is compatible with ggtree's +#' \code{\%<+\%} operator for plotting. +#' +#' If \code{summary = FALSE}, a list with elements: +#' \describe{ +#' \item{draws}{A 3D array with dimensions [draws, nodes, variables]} +#' \item{ref_tree}{The reference phylo object} +#' \item{node_ids}{Integer vector of node IDs (matching dim 2 of draws)} +#' \item{variable_names}{Character vector of variable names} +#' } +#' +#' @examples +#' \dontrun{ +#' # fit dynamic coevolutionary model +#' fit <- coev_fit( +#' data = authority$data, +#' variables = list( +#' political_authority = "ordered_logistic", +#' religious_authority = "ordered_logistic" +#' ), +#' id = "language", +#' tree = authority$phylogeny, +#' chains = 4, +#' parallel_chains = 4, +#' seed = 1 +#' ) +#' +#' # extract ancestral states (latent scale, internal nodes, summary) +#' asr <- coev_ancestral_states(fit) +#' +#' # extract all nodes including tips +#' asr_all <- coev_ancestral_states(fit, nodes = "all") +#' +#' # extract on response scale +#' asr_resp <- coev_ancestral_states(fit, scale = "response") +#' +#' # get raw posterior draws +#' asr_draws <- coev_ancestral_states(fit, summary = FALSE) +#' } +#' +#' @seealso \code{\link{coev_fit}}, \code{\link{coev_plot_trait_values}} +#' +#' @export +coev_ancestral_states <- function( + object, + variables = NULL, + nodes = "internal", + tree_id = NULL, + scale = "latent", + summary = TRUE, + prob = 0.95 +) { + # input validation + run_checks_ancestral_states( + object, variables, nodes, tree_id, scale, summary, prob + ) + # get tree(s) from fitted model + tree <- object$tree + if (!inherits(tree, "multiPhylo")) { + tree <- c(tree) # coerce single phylo to multiPhylo + class(tree) <- "multiPhylo" + } + n_tree <- object$stan_data$N_tree + n_tips <- object$stan_data$N_tips + n_seg <- object$stan_data$N_seg + node_seq <- object$stan_data$node_seq # matrix [N_tree, N_seg] + tip_indicator <- object$stan_data$tip # matrix [N_tree, N_seg] + var_names <- names(object$variables) + distributions <- unlist(object$variables) + j <- length(var_names) + # subset variables if requested + if (!is.null(variables)) { + var_idx <- match(variables, var_names) + var_names <- variables + } else { + var_idx <- seq_len(j) + } + # determine which tree to use + if (!is.null(tree_id)) { + t_idx <- tree_id + } else { + t_idx <- 1L + } + ref_tree <- tree[[t_idx]] + # extract posterior draws of eta + # eta has Stan dims array[N_tree, N_seg] vector[J] + # after extract_samples(): [draws, N_tree, N_seg, J] + post <- extract_samples(object) + eta_draws <- post$eta # [draws, N_tree, N_seg, J] + # subset to the selected tree + eta_t <- eta_draws[, t_idx, , , drop = FALSE] + # collapse tree dimension: [draws, N_seg, J] + eta_t <- array( + eta_t, + dim = c(dim(eta_t)[1], dim(eta_t)[3], dim(eta_t)[4]) + ) + # determine which nodes to include + # node_seq[t, i] gives the phylo node ID at position i + # eta_t[draw, k, j] is indexed by node ID k (since Stan assigns + # eta[t, node_seq[t,i]] = ..., so the second dim IS node ID) + all_node_ids <- seq_len(n_seg) + internal_mask <- all_node_ids > n_tips + if (is.character(nodes)) { + if (nodes == "internal") { + selected_nodes <- all_node_ids[internal_mask] + } else if (nodes == "all") { + selected_nodes <- all_node_ids + } + } else { + # integer vector of specific node IDs + selected_nodes <- as.integer(nodes) + } + # extract draws for selected nodes and variables + # result: [draws, length(selected_nodes), length(var_idx)] + draws_subset <- eta_t[, selected_nodes, var_idx, drop = FALSE] + if (summary) { + # compute posterior summaries + probs <- c((1 - prob) / 2, 1 - (1 - prob) / 2) + rows <- list() + for (n_i in seq_along(selected_nodes)) { + for (v_i in seq_along(var_idx)) { + node_draws <- draws_subset[, n_i, v_i] + rows[[length(rows) + 1]] <- data.frame( + node = selected_nodes[n_i], + variable = var_names[v_i], + estimate = stats::median(node_draws), + lower = stats::quantile(node_draws, probs[1], names = FALSE), + upper = stats::quantile(node_draws, probs[2], names = FALSE), + clade_pp = 1.0, + stringsAsFactors = FALSE + ) + } + } + result <- do.call(rbind, rows) + result <- tibble::as_tibble(result) + attr(result, "ref_tree") <- ref_tree + attr(result, "prob") <- prob + attr(result, "scale") <- scale + return(result) + } else { + # return raw draws + dimnames(draws_subset) <- list( + draw = NULL, + node = selected_nodes, + variable = var_names + ) + return(list( + draws = draws_subset, + ref_tree = ref_tree, + node_ids = selected_nodes, + variable_names = var_names + )) + } +} + +#' Input validation for coev_ancestral_states +#' @noRd +run_checks_ancestral_states <- function( + object, variables, nodes, tree_id, scale, summary, prob +) { + if (!methods::is(object, "coevfit")) { + stop2( + paste0( + "Argument 'object' must be a fitted coevolutionary model ", + "of class coevfit." + ) + ) + } + if (!is.null(variables)) { + if (!is.character(variables)) { + stop2("Argument 'variables' must be a character vector.") + } + if (!all(variables %in% names(object$variables))) { + stop2( + paste0( + "Argument 'variables' contains variable names that are not ", + "included in the fitted model." + ) + ) + } + } + if (is.character(nodes)) { + if (!(nodes %in% c("internal", "all"))) { + stop2( + "Argument 'nodes' must be \"internal\", \"all\", or an integer vector." + ) + } + } else if (!is.numeric(nodes)) { + stop2( + "Argument 'nodes' must be \"internal\", \"all\", or an integer vector." + ) + } + if (!is.null(tree_id)) { + if (!is.numeric(tree_id) || length(tree_id) != 1 || + as.integer(tree_id) != tree_id) { + stop2("Argument 'tree_id' must be a single integer.") + } + if (tree_id < 1 || tree_id > object$stan_data$N_tree) { + stop2("Argument 'tree_id' must be between 1 and the number of trees.") + } + } + if (!is.character(scale) || length(scale) != 1 || + !(scale %in% c("latent", "response"))) { + stop2("Argument 'scale' must be \"latent\" or \"response\".") + } + if (!is.logical(summary) || length(summary) != 1) { + stop2("Argument 'summary' must be logical.") + } + if (!is.numeric(prob) || length(prob) != 1 || prob <= 0 || prob >= 1) { + stop2( + "Argument 'prob' must be a single numeric value between 0 and 1." + ) + } +} diff --git a/tests/testthat/test-coev_ancestral_states.R b/tests/testthat/test-coev_ancestral_states.R new file mode 100644 index 0000000..17d8dde --- /dev/null +++ b/tests/testthat/test-coev_ancestral_states.R @@ -0,0 +1,195 @@ +test_that("coev_ancestral_states() produces expected errors", { + # load single-tree model (5 distributions) and multi-tree model + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + # object must be coevfit + expect_error( + coev_ancestral_states(object = "fail"), + "Argument 'object' must be a fitted coevolutionary model of class coevfit.", + fixed = TRUE + ) + # variables must be character + expect_error( + coev_ancestral_states(object = m01, variables = 123), + "Argument 'variables' must be a character vector.", + fixed = TRUE + ) + # variables must be in model + expect_error( + coev_ancestral_states(object = m01, variables = "nonexistent"), + paste0( + "Argument 'variables' contains variable names that are not ", + "included in the fitted model." + ), + fixed = TRUE + ) + # nodes must be valid + expect_error( + coev_ancestral_states(object = m01, nodes = "bad_value"), + "Argument 'nodes' must be \"internal\", \"all\", or an integer vector.", + fixed = TRUE + ) + # tree_id must be valid integer + expect_error( + coev_ancestral_states(object = m01, tree_id = "fail"), + "Argument 'tree_id' must be a single integer.", + fixed = TRUE + ) + expect_error( + coev_ancestral_states(object = m01, tree_id = 99), + "Argument 'tree_id' must be between 1 and the number of trees.", + fixed = TRUE + ) + # scale must be valid + expect_error( + coev_ancestral_states(object = m01, scale = "bad"), + "Argument 'scale' must be \"latent\" or \"response\".", + fixed = TRUE + ) + # summary must be logical + expect_error( + coev_ancestral_states(object = m01, summary = "fail"), + "Argument 'summary' must be logical.", + fixed = TRUE + ) + # prob must be valid + expect_error( + coev_ancestral_states(object = m01, prob = 1.5), + "Argument 'prob' must be a single numeric value between 0 and 1.", + fixed = TRUE + ) + expect_error( + coev_ancestral_states(object = m01, prob = -0.1), + "Argument 'prob' must be a single numeric value between 0 and 1.", + fixed = TRUE + ) +}) + +test_that("coev_ancestral_states() returns correct structure (single tree, latent)", { + # m01: single tree, 5 tips, 5 variables + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + # default: internal nodes only, summary = TRUE, latent scale + result <- sw(coev_ancestral_states(m01)) + # should be a data frame / tibble + + expect_true(is.data.frame(result)) + # should have the correct columns + expect_true(all(c("node", "variable", "estimate", "lower", "upper") + %in% names(result))) + # should have clade_pp = 1 for single tree + expect_true("clade_pp" %in% names(result)) + expect_true(all(result$clade_pp == 1.0)) + # number of rows: internal nodes (N_tips - 1 = 4) * variables (5) = 20 + n_tips <- m01$stan_data$N_tips + n_internal <- n_tips - 1 + n_vars <- length(m01$variables) + expect_equal(nrow(result), n_internal * n_vars) + # node IDs should be > N_tips (internal nodes in ape convention) + expect_true(all(result$node > n_tips)) + # variable names should match the model + expect_equal(sort(unique(result$variable)), sort(names(m01$variables))) + # estimates should be finite + expect_true(all(is.finite(result$estimate))) + # lower should be <= estimate, estimate <= upper + expect_true(all(result$lower <= result$estimate)) + expect_true(all(result$estimate <= result$upper)) + # ref_tree attribute should be set + expect_true(!is.null(attr(result, "ref_tree"))) + expect_true(inherits(attr(result, "ref_tree"), "phylo")) +}) + +test_that("coev_ancestral_states() nodes = 'all' includes tips", { + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m01, nodes = "all")) + n_tips <- m01$stan_data$N_tips + n_seg <- m01$stan_data$N_seg + n_vars <- length(m01$variables) + # should include all nodes (tips + internal) + expect_equal(nrow(result), n_seg * n_vars) + # some node IDs should be <= N_tips (tips) + expect_true(any(result$node <= n_tips)) + # some node IDs should be > N_tips (internal) + expect_true(any(result$node > n_tips)) +}) + +test_that("coev_ancestral_states() nodes = integer vector works", { + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + n_tips <- m01$stan_data$N_tips + # request specific internal nodes + target_nodes <- c(n_tips + 1, n_tips + 2) + result <- sw(coev_ancestral_states(m01, nodes = target_nodes)) + n_vars <- length(m01$variables) + expect_equal(nrow(result), length(target_nodes) * n_vars) + expect_equal(sort(unique(result$node)), sort(target_nodes)) +}) + +test_that("coev_ancestral_states() summary = FALSE returns draws", { + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m01, summary = FALSE)) + # should be a list + expect_true(is.list(result)) + expect_true("draws" %in% names(result)) + expect_true("ref_tree" %in% names(result)) + expect_true("variable_names" %in% names(result)) + # draws should be a 3D array: [draws, nodes, variables] + expect_equal(length(dim(result$draws)), 3) + n_tips <- m01$stan_data$N_tips + n_internal <- n_tips - 1 + n_vars <- length(m01$variables) + expect_equal(dim(result$draws)[2], n_internal) # internal nodes only + expect_equal(dim(result$draws)[3], n_vars) + # all values should be finite + expect_true(all(is.finite(result$draws))) +}) + +test_that("coev_ancestral_states() variables argument subsets correctly", { + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m01, variables = c("u", "v"))) + expect_equal(sort(unique(result$variable)), sort(c("u", "v"))) + n_tips <- m01$stan_data$N_tips + n_internal <- n_tips - 1 + expect_equal(nrow(result), n_internal * 2) +}) + +test_that("coev_ancestral_states() prob argument changes CI width", { + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + narrow <- sw(coev_ancestral_states(m01, prob = 0.5)) + wide <- sw(coev_ancestral_states(m01, prob = 0.99)) + # wider prob should give wider intervals + ci_width_narrow <- narrow$upper - narrow$lower + ci_width_wide <- wide$upper - wide$lower + expect_true(all(ci_width_wide >= ci_width_narrow - 1e-10)) +}) + +test_that("coev_ancestral_states() works across all fixture models", { + sw <- suppressWarnings + models <- list( + m01 = list(rds = "coevfit_example_01.rds", csv = "coevfit_example_01-1.csv"), + m02 = list(rds = "coevfit_example_02.rds", csv = "coevfit_example_02-1.csv"), + m04 = list(rds = "coevfit_example_04.rds", csv = "coevfit_example_04-1.csv"), + m05 = list(rds = "coevfit_example_05.rds", csv = "coevfit_example_05-1.csv"), + m06 = list(rds = "coevfit_example_06.rds", csv = "coevfit_example_06-1.csv"), + m09 = list(rds = "coevfit_example_09.rds", csv = "coevfit_example_09-1.csv"), + m10 = list(rds = "coevfit_example_10.rds", csv = "coevfit_example_10-1.csv") + ) + for (name in names(models)) { + m <- readRDS(test_path("fixtures", models[[name]]$rds)) + m <- reload_fit(m, filename = models[[name]]$csv) + expect_no_error(sw(coev_ancestral_states(m)), label = name) + result <- sw(coev_ancestral_states(m)) + expect_true(is.data.frame(result), label = name) + expect_true(all(is.finite(result$estimate)), label = name) + } +}) From 408ce9f1ed4eadf4b2fde6cdb09fd0ff51d93dfe Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 12 Apr 2026 20:15:59 +0000 Subject: [PATCH 2/8] Add response-scale transforms and multi-tree tests Response scale support for all distributions: - normal: identity - bernoulli_logit: plogis(eta) -> P(y=1) - ordered_logistic: category probabilities via cutpoints - poisson_softplus: mean(obs) * softplus(eta) - negative_binomial_softplus: mean(obs) * softplus(eta) - gamma_log: exp(eta) For ordered_logistic on response scale, output has prob_1, prob_2, ... columns instead of estimate/lower/upper. Multi-tree tests cover tree_id selection and default behavior. https://claude.ai/code/session_01J6wGw5nJjfG1Eavh4pq9kR --- R/coev_ancestral_states.R | 192 ++++++++++++++++++-- tests/testthat/test-coev_ancestral_states.R | 98 ++++++++++ 2 files changed, 274 insertions(+), 16 deletions(-) diff --git a/R/coev_ancestral_states.R b/R/coev_ancestral_states.R index 5de0a0d..d64e913 100644 --- a/R/coev_ancestral_states.R +++ b/R/coev_ancestral_states.R @@ -151,25 +151,62 @@ coev_ancestral_states <- function( # extract draws for selected nodes and variables # result: [draws, length(selected_nodes), length(var_idx)] draws_subset <- eta_t[, selected_nodes, var_idx, drop = FALSE] + # apply response-scale transform if requested + if (scale == "response") { + # compute mean of observed (non-missing) values per variable + # needed for poisson_softplus and negative_binomial_softplus + obs_means <- compute_obs_means(object, var_idx) + # get cutpoints for ordered_logistic variables + cutpoints <- extract_cutpoints(post, distributions, var_idx) + draws_subset <- apply_inverse_link( + draws_subset, distributions[var_idx], obs_means, cutpoints + ) + } + # check if any variables are ordered_logistic on response scale + has_ordinal_response <- scale == "response" && + any(distributions[var_idx] == "ordered_logistic") if (summary) { # compute posterior summaries probs <- c((1 - prob) / 2, 1 - (1 - prob) / 2) rows <- list() for (n_i in seq_along(selected_nodes)) { for (v_i in seq_along(var_idx)) { - node_draws <- draws_subset[, n_i, v_i] - rows[[length(rows) + 1]] <- data.frame( - node = selected_nodes[n_i], - variable = var_names[v_i], - estimate = stats::median(node_draws), - lower = stats::quantile(node_draws, probs[1], names = FALSE), - upper = stats::quantile(node_draws, probs[2], names = FALSE), - clade_pp = 1.0, - stringsAsFactors = FALSE - ) + dist <- distributions[var_idx[v_i]] + if (scale == "response" && dist == "ordered_logistic") { + # draws_subset is a list for ordinal variables + # draws_subset[[v_i]][draw, node, category] + cat_draws <- draws_subset[[v_i]][, n_i, , drop = FALSE] + n_cats <- dim(cat_draws)[3] + row <- data.frame( + node = selected_nodes[n_i], + variable = var_names[v_i], + stringsAsFactors = FALSE + ) + for (k in seq_len(n_cats)) { + cat_k <- cat_draws[, 1, k] + row[[paste0("prob_", k)]] <- stats::median(cat_k) + } + row$clade_pp <- 1.0 + rows[[length(rows) + 1]] <- row + } else { + if (is.list(draws_subset)) { + node_draws <- draws_subset[[v_i]][, n_i, 1] + } else { + node_draws <- draws_subset[, n_i, v_i] + } + rows[[length(rows) + 1]] <- data.frame( + node = selected_nodes[n_i], + variable = var_names[v_i], + estimate = stats::median(node_draws), + lower = stats::quantile(node_draws, probs[1], names = FALSE), + upper = stats::quantile(node_draws, probs[2], names = FALSE), + clade_pp = 1.0, + stringsAsFactors = FALSE + ) + } } } - result <- do.call(rbind, rows) + result <- do.call(dplyr::bind_rows, rows) result <- tibble::as_tibble(result) attr(result, "ref_tree") <- ref_tree attr(result, "prob") <- prob @@ -177,11 +214,13 @@ coev_ancestral_states <- function( return(result) } else { # return raw draws - dimnames(draws_subset) <- list( - draw = NULL, - node = selected_nodes, - variable = var_names - ) + if (!is.list(draws_subset)) { + dimnames(draws_subset) <- list( + draw = NULL, + node = selected_nodes, + variable = var_names + ) + } return(list( draws = draws_subset, ref_tree = ref_tree, @@ -191,6 +230,127 @@ coev_ancestral_states <- function( } } +#' Compute mean of observed (non-missing) values per variable +#' @noRd +compute_obs_means <- function(object, var_idx) { + var_names <- names(object$variables) + data <- object$data + obs_means <- numeric(length(var_idx)) + for (i in seq_along(var_idx)) { + vname <- var_names[var_idx[i]] + vals <- data[[vname]] + # remove NAs and convert to numeric + vals <- as.numeric(vals[!is.na(vals)]) + obs_means[i] <- mean(vals) + } + obs_means +} + +#' Extract cutpoints for ordered_logistic variables from posterior +#' @noRd +extract_cutpoints <- function(post, distributions, var_idx) { + cutpoints <- list() + all_dists <- distributions + for (i in seq_along(var_idx)) { + j <- var_idx[i] + if (all_dists[j] == "ordered_logistic") { + # cutpoints are named c1, c2, ... in posterior (by original position) + cp_name <- paste0("c", j) + if (cp_name %in% names(post)) { + cutpoints[[i]] <- post[[cp_name]] # [draws, n_cutpoints] + } + } else { + cutpoints[[i]] <- NULL + } + } + cutpoints +} + +#' Apply inverse link function to draws +#' @noRd +apply_inverse_link <- function(draws, distributions, obs_means, cutpoints) { + n_draws <- dim(draws)[1] + n_nodes <- dim(draws)[2] + n_vars <- dim(draws)[3] + has_ordinal <- any(distributions == "ordered_logistic") + if (has_ordinal) { + # need to return a list since ordinal variables have different dimensions + result <- vector("list", n_vars) + for (v in seq_len(n_vars)) { + dist <- distributions[v] + eta_v <- draws[, , v] # [draws, nodes] + if (is.null(dim(eta_v))) { + eta_v <- matrix(eta_v, nrow = n_draws, ncol = n_nodes) + } + if (dist == "ordered_logistic" && !is.null(cutpoints[[v]])) { + cp <- cutpoints[[v]] # [draws, n_cutpoints] + if (is.null(dim(cp))) cp <- matrix(cp, ncol = 1) + n_cats <- ncol(cp) + 1 + # result: [draws, nodes, categories] + cat_probs <- array(NA, dim = c(n_draws, n_nodes, n_cats)) + for (d in seq_len(n_draws)) { + for (n in seq_len(n_nodes)) { + cat_probs[d, n, ] <- ordered_logistic_probs( + eta_v[d, n], cp[d, ] + ) + } + } + result[[v]] <- cat_probs + } else { + # wrap scalar transform in 3D array [draws, nodes, 1] + transformed <- transform_eta(eta_v, dist, obs_means[v]) + result[[v]] <- array(transformed, dim = c(n_draws, n_nodes, 1)) + } + } + return(result) + } else { + # all variables are non-ordinal: apply element-wise transforms + for (v in seq_len(n_vars)) { + eta_v <- draws[, , v] + if (is.null(dim(eta_v))) { + eta_v <- matrix(eta_v, nrow = n_draws, ncol = n_nodes) + } + draws[, , v] <- transform_eta(eta_v, distributions[v], obs_means[v]) + } + return(draws) + } +} + +#' Apply scalar inverse link for a single distribution +#' @noRd +transform_eta <- function(eta, distribution, obs_mean = NULL) { + switch( + distribution, + "normal" = eta, + "bernoulli_logit" = stats::plogis(eta), + "poisson_softplus" = obs_mean * log1p(exp(eta)), + "negative_binomial_softplus" = obs_mean * log1p(exp(eta)), + "gamma_log" = exp(eta), + eta # fallback: identity + ) +} + +#' Compute ordered logistic probabilities from eta and cutpoints +#' @noRd +ordered_logistic_probs <- function(eta, cutpoints) { + # P(Y = k) for ordered logistic model + # P(Y <= k) = logistic(c_k - eta) + # P(Y = k) = P(Y <= k) - P(Y <= k-1) + n_cats <- length(cutpoints) + 1 + probs <- numeric(n_cats) + for (k in seq_len(n_cats)) { + if (k == 1) { + probs[k] <- stats::plogis(cutpoints[1] - eta) + } else if (k == n_cats) { + probs[k] <- 1 - stats::plogis(cutpoints[k - 1] - eta) + } else { + probs[k] <- stats::plogis(cutpoints[k] - eta) - + stats::plogis(cutpoints[k - 1] - eta) + } + } + probs +} + #' Input validation for coev_ancestral_states #' @noRd run_checks_ancestral_states <- function( diff --git a/tests/testthat/test-coev_ancestral_states.R b/tests/testthat/test-coev_ancestral_states.R index 17d8dde..0f7e5ad 100644 --- a/tests/testthat/test-coev_ancestral_states.R +++ b/tests/testthat/test-coev_ancestral_states.R @@ -173,6 +173,99 @@ test_that("coev_ancestral_states() prob argument changes CI width", { expect_true(all(ci_width_wide >= ci_width_narrow - 1e-10)) }) +test_that("coev_ancestral_states() response scale: bernoulli_logit returns probabilities", { + # m09: bernoulli_logit x2, single tree + m09 <- readRDS(test_path("fixtures", "coevfit_example_09.rds")) + m09 <- reload_fit(m09, filename = "coevfit_example_09-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m09, scale = "response")) + # probabilities should be in [0, 1] + expect_true(all(result$estimate >= 0 & result$estimate <= 1)) + expect_true(all(result$lower >= 0)) + expect_true(all(result$upper <= 1)) +}) + +test_that("coev_ancestral_states() response scale: poisson returns positive counts", { + # m04: poisson_softplus + negative_binomial_softplus + m04 <- readRDS(test_path("fixtures", "coevfit_example_04.rds")) + m04 <- reload_fit(m04, filename = "coevfit_example_04-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m04, scale = "response")) + # expected counts should be positive + expect_true(all(result$estimate > 0)) + expect_true(all(result$lower >= 0)) +}) + +test_that("coev_ancestral_states() response scale: normal is same as latent", { + # m10: normal x2 + m10 <- readRDS(test_path("fixtures", "coevfit_example_10.rds")) + m10 <- reload_fit(m10, filename = "coevfit_example_10-1.csv") + sw <- suppressWarnings + latent <- sw(coev_ancestral_states(m10, scale = "latent")) + response <- sw(coev_ancestral_states(m10, scale = "response")) + # for normal distribution, latent and response should be identical + expect_equal(latent$estimate, response$estimate, tolerance = 1e-10) + expect_equal(latent$lower, response$lower, tolerance = 1e-10) + expect_equal(latent$upper, response$upper, tolerance = 1e-10) +}) + +test_that("coev_ancestral_states() response scale: gamma returns positive values", { + # m01 has gamma_log as variable u + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m01, variables = "u", scale = "response")) + # gamma_log response scale is exp(eta), should be positive + expect_true(all(result$estimate > 0)) + expect_true(all(result$lower > 0)) +}) + +test_that("coev_ancestral_states() response scale: ordered_logistic returns probs", { + # m02: bernoulli_logit + ordered_logistic + m02 <- readRDS(test_path("fixtures", "coevfit_example_02.rds")) + m02 <- reload_fit(m02, filename = "coevfit_example_02-1.csv") + sw <- suppressWarnings + result <- sw(coev_ancestral_states(m02, variables = "x", scale = "response")) + # ordered logistic on response scale returns category probabilities + # so result should have prob_1, prob_2, ... columns instead of estimate + expect_true(any(grepl("^prob_", names(result)))) + # probabilities should be in [0, 1] + prob_cols <- grep("^prob_", names(result), value = TRUE) + for (col in prob_cols) { + expect_true(all(result[[col]] >= 0 & result[[col]] <= 1)) + } + # probabilities should sum to ~1 per node + prob_sums <- rowSums(result[, prob_cols]) + expect_equal(prob_sums, rep(1, nrow(result)), tolerance = 0.01) +}) + +test_that("coev_ancestral_states() multi-tree with tree_id selects single tree", { + # m08: multiPhylo with 2 trees, bernoulli_logit x2 + m08 <- readRDS(test_path("fixtures", "coevfit_example_08.rds")) + m08 <- reload_fit(m08, filename = "coevfit_example_08-1.csv") + sw <- suppressWarnings + # should work with tree_id = 1 + result1 <- sw(coev_ancestral_states(m08, tree_id = 1)) + expect_true(is.data.frame(result1)) + expect_true(all(result1$clade_pp == 1.0)) + # should work with tree_id = 2 + result2 <- sw(coev_ancestral_states(m08, tree_id = 2)) + expect_true(is.data.frame(result2)) + # results from different trees may differ + # (they have different topologies, different eta values) +}) + +test_that("coev_ancestral_states() multi-tree default uses tree 1", { + # m08: multiPhylo with 2 trees + m08 <- readRDS(test_path("fixtures", "coevfit_example_08.rds")) + m08 <- reload_fit(m08, filename = "coevfit_example_08-1.csv") + sw <- suppressWarnings + # default (tree_id = NULL) should use tree 1 for now + result_default <- sw(coev_ancestral_states(m08)) + result_t1 <- sw(coev_ancestral_states(m08, tree_id = 1)) + expect_equal(result_default$estimate, result_t1$estimate) +}) + test_that("coev_ancestral_states() works across all fixture models", { sw <- suppressWarnings models <- list( @@ -181,6 +274,7 @@ test_that("coev_ancestral_states() works across all fixture models", { m04 = list(rds = "coevfit_example_04.rds", csv = "coevfit_example_04-1.csv"), m05 = list(rds = "coevfit_example_05.rds", csv = "coevfit_example_05-1.csv"), m06 = list(rds = "coevfit_example_06.rds", csv = "coevfit_example_06-1.csv"), + m08 = list(rds = "coevfit_example_08.rds", csv = "coevfit_example_08-1.csv"), m09 = list(rds = "coevfit_example_09.rds", csv = "coevfit_example_09-1.csv"), m10 = list(rds = "coevfit_example_10.rds", csv = "coevfit_example_10-1.csv") ) @@ -191,5 +285,9 @@ test_that("coev_ancestral_states() works across all fixture models", { result <- sw(coev_ancestral_states(m)) expect_true(is.data.frame(result), label = name) expect_true(all(is.finite(result$estimate)), label = name) + # response scale should also work + expect_no_error( + sw(coev_ancestral_states(m, scale = "response")), label = name + ) } }) From 032a66b40ba49557159c8b9a92082238fcd10294 Mon Sep 17 00:00:00 2001 From: Erik Ringen Date: Mon, 27 Apr 2026 09:14:53 +0100 Subject: [PATCH 3/8] Add coev_plot_node_labels() and ASR vignette Add coev_plot_node_labels() for visualizing internal node IDs on the phylogenetic tree, with auto-scaling label size and customizable appearance. Add ancestral_states.qmd vignette demonstrating the full ASR workflow: latent/response scale extraction, tree visualization, interactive node selection via identify(), and node-specific queries. Co-Authored-By: Claude Opus 4.6 (1M context) --- NAMESPACE | 1 + R/coev_plot_node_labels.R | 119 +++++++ man/coev_ancestral_states.Rd | 105 ++++++ man/coev_plot_node_labels.Rd | 74 +++++ tests/testthat/test-coev_plot_node_labels.R | 39 +++ vignettes/ancestral_states.qmd | 344 ++++++++++++++++++++ 6 files changed, 682 insertions(+) create mode 100644 R/coev_plot_node_labels.R create mode 100644 man/coev_ancestral_states.Rd create mode 100644 man/coev_plot_node_labels.Rd create mode 100644 tests/testthat/test-coev_plot_node_labels.R create mode 100644 vignettes/ancestral_states.qmd diff --git a/NAMESPACE b/NAMESPACE index ab2d12b..32f72e0 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -18,6 +18,7 @@ export(coev_make_stancode) export(coev_make_standata) export(coev_plot_delta_theta) export(coev_plot_flowfield) +export(coev_plot_node_labels) export(coev_plot_pred_series) export(coev_plot_predictive_check) export(coev_plot_selection_gradient) diff --git a/R/coev_plot_node_labels.R b/R/coev_plot_node_labels.R new file mode 100644 index 0000000..877ef16 --- /dev/null +++ b/R/coev_plot_node_labels.R @@ -0,0 +1,119 @@ +#' Plot phylogenetic tree with node labels from a fitted coevolutionary model +#' +#' Plots the phylogenetic tree from a fitted \code{coevfit} object with +#' internal node IDs displayed, making it easy to identify node numbers +#' for use with \code{\link{coev_ancestral_states}}. The tree is returned +#' invisibly so it can be passed to \code{\link[ape]{identify.phylo}} for +#' interactive node selection. +#' +#' @param object An object of class \code{coevfit} +#' @param tip_labels Logical. If \code{FALSE} (default), tip labels are +#' hidden to reduce clutter. Set to \code{TRUE} to display tip labels. +#' @param node_cex Numeric scaling factor for node label size. If \code{NULL} +#' (default), the size is chosen automatically based on the number of tips. +#' @param node_col Color for node labels. Default is \code{"#B2182B"} (red). +#' @param ... Additional arguments passed to \code{\link[ape]{plot.phylo}} +#' (e.g. \code{cex} for tip label size, \code{edge.width}, \code{type}). +#' +#' @returns The \code{phylo} tree object, returned invisibly. +#' +#' @author Erik Ringen \email{erikjacob.ringen@@uzh.ch} +#' +#' @details This function is a convenience wrapper around +#' \code{\link[ape]{plot.phylo}} and \code{\link[ape]{nodelabels}} that +#' displays internal node IDs using ape's numbering convention: tips are +#' numbered \code{1:N_tips} and internal nodes are +#' \code{(N_tips + 1):(N_tips + N_internal)}. +#' +#' Node label size scales automatically with tree size when +#' \code{node_cex = NULL}. For large trees, consider hiding tip labels +#' (the default) and using the interactive workflow below to identify +#' nodes of interest. +#' +#' In an interactive R session, the returned tree can be passed to +#' \code{identify()} to click on nodes and retrieve their IDs: +#' +#' \preformatted{ +#' tree <- coev_plot_node_labels(fit) +#' selected <- identify(tree) +#' coev_ancestral_states(fit, nodes = selected$nodes) +#' } +#' +#' @seealso \code{\link{coev_ancestral_states}}, +#' \code{\link[ape]{plot.phylo}}, \code{\link[ape]{identify.phylo}} +#' +#' @examples +#' \dontrun{ +#' # fit dynamic coevolutionary model +#' fit <- coev_fit( +#' data = authority$data, +#' variables = list( +#' political_authority = "ordered_logistic", +#' religious_authority = "ordered_logistic" +#' ), +#' id = "language", +#' tree = authority$phylogeny, +#' chains = 4, +#' parallel_chains = 4, +#' seed = 1 +#' ) +#' +#' # plot tree with node labels (no tip labels by default) +#' coev_plot_node_labels(fit) +#' +#' # show tip labels and customise node appearance +#' coev_plot_node_labels(fit, tip_labels = TRUE, node_cex = 0.4, +#' cex = 0.4) +#' +#' # interactive node selection (in interactive R sessions) +#' tree <- coev_plot_node_labels(fit) +#' selected <- identify(tree) +#' coev_ancestral_states(fit, nodes = selected$nodes) +#' } +#' +#' @export +coev_plot_node_labels <- function(object, tip_labels = FALSE, + node_cex = NULL, node_col = "#B2182B", + ...) { + if (!methods::is(object, "coevfit")) { + stop2( + paste0( + "Argument 'object' must be a fitted coevolutionary model ", + "of class coevfit." + ) + ) + } + if (!is.logical(tip_labels) || length(tip_labels) != 1) { + stop2("Argument 'tip_labels' must be TRUE or FALSE.") + } + if (!is.null(node_cex)) { + if (!is.numeric(node_cex) || length(node_cex) != 1 || node_cex <= 0) { + stop2("Argument 'node_cex' must be a single positive number.") + } + } + tree <- object$tree + if (inherits(tree, "multiPhylo")) tree <- tree[[1]] + n_tips <- length(tree$tip.label) + internal_ids <- (n_tips + 1):(n_tips + tree$Nnode) + # auto-scale node label size based on number of tips + if (is.null(node_cex)) { + node_cex <- min(0.8, max(0.25, 5 / sqrt(n_tips))) + } + ape::plot.phylo( + tree, + show.tip.label = tip_labels, + edge.width = 1.5, + edge.color = "grey50", + no.margin = !tip_labels, + ... + ) + ape::nodelabels( + text = internal_ids, + cex = node_cex, + frame = "none", + col = node_col, + font = 2, + adj = c(-0.3, 0.5) + ) + invisible(tree) +} diff --git a/man/coev_ancestral_states.Rd b/man/coev_ancestral_states.Rd new file mode 100644 index 0000000..05c979a --- /dev/null +++ b/man/coev_ancestral_states.Rd @@ -0,0 +1,105 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/coev_ancestral_states.R +\name{coev_ancestral_states} +\alias{coev_ancestral_states} +\title{Extract ancestral state estimates from a fitted coevolutionary model} +\usage{ +coev_ancestral_states( + object, + variables = NULL, + nodes = "internal", + tree_id = NULL, + scale = "latent", + summary = TRUE, + prob = 0.95 +) +} +\arguments{ +\item{object}{An object of class \code{coevfit}} + +\item{variables}{(optional) A character vector of variable names to include. +If \code{NULL} (default), all variables from the fitted model are included.} + +\item{nodes}{Which nodes to include. Either \code{"internal"} (default) for +internal nodes only, \code{"all"} for both tips and internal nodes, or an +integer vector of specific node IDs (using ape's node numbering convention +where tips are 1:N_tips and internal nodes are (N_tips+1):(N_tips+N_internal)).} + +\item{tree_id}{(optional) An integer indicating which tree to use when the +model was fit with a \code{multiPhylo} object. If \code{NULL} (default), +uses tree 1 when only one tree is present, or integrates over trees when +multiple trees are present.} + +\item{scale}{Character string, either \code{"latent"} (default) to return +values on the latent eta scale, or \code{"response"} to apply the inverse +link function for each variable's response distribution.} + +\item{summary}{Logical. If \code{TRUE} (default), returns a summary data +frame with posterior median and credible intervals. If \code{FALSE}, +returns the raw posterior draws.} + +\item{prob}{A single numeric value between 0 and 1 indicating the desired +probability mass for the credible interval. Default is 0.95.} +} +\value{ +If \code{summary = TRUE}, a data frame (tibble) with columns: +\describe{ +\item{node}{Integer node ID in the reference tree} +\item{variable}{Character variable name} +\item{estimate}{Posterior median} +\item{lower}{Lower bound of the credible interval} +\item{upper}{Upper bound of the credible interval} +\item{clade_pp}{Clade posterior probability (1.0 for single-tree models)} +} +The data frame has attributes \code{ref_tree} (the phylo object used), +\code{prob}, and \code{scale}. The format is compatible with ggtree's +\code{\%<+\%} operator for plotting. + +If \code{summary = FALSE}, a list with elements: +\describe{ +\item{draws}{A 3D array with dimensions \link{draws, nodes, variables}} +\item{ref_tree}{The reference phylo object} +\item{node_ids}{Integer vector of node IDs (matching dim 2 of draws)} +\item{variable_names}{Character vector of variable names} +} +} +\description{ +Extracts posterior estimates of latent trait values at internal nodes +of the phylogenetic tree from a fitted \code{coevfit} object. The latent +\code{eta} parameters in the model correspond directly to nodes in the +phylogeny, making ancestral state reconstruction a natural byproduct of +the model fitting process. +} +\examples{ +\dontrun{ +# fit dynamic coevolutionary model +fit <- coev_fit( + data = authority$data, + variables = list( + political_authority = "ordered_logistic", + religious_authority = "ordered_logistic" + ), + id = "language", + tree = authority$phylogeny, + chains = 4, + parallel_chains = 4, + seed = 1 +) + +# extract ancestral states (latent scale, internal nodes, summary) +asr <- coev_ancestral_states(fit) + +# extract all nodes including tips +asr_all <- coev_ancestral_states(fit, nodes = "all") + +# extract on response scale +asr_resp <- coev_ancestral_states(fit, scale = "response") + +# get raw posterior draws +asr_draws <- coev_ancestral_states(fit, summary = FALSE) +} + +} +\seealso{ +\code{\link{coev_fit}}, \code{\link{coev_plot_trait_values}} +} diff --git a/man/coev_plot_node_labels.Rd b/man/coev_plot_node_labels.Rd new file mode 100644 index 0000000..a435aff --- /dev/null +++ b/man/coev_plot_node_labels.Rd @@ -0,0 +1,74 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/coev_plot_node_labels.R +\name{coev_plot_node_labels} +\alias{coev_plot_node_labels} +\title{Plot phylogenetic tree with node labels from a fitted coevolutionary model} +\usage{ +coev_plot_node_labels(object, tip_labels = TRUE, ...) +} +\arguments{ +\item{object}{An object of class \code{coevfit}} + +\item{tip_labels}{Logical. If \code{TRUE} (default), tip labels are shown.} + +\item{...}{Additional arguments passed to \code{\link[ape]{plot.phylo}}.} +} +\value{ +The \code{phylo} tree object, returned invisibly. +} +\description{ +Plots the phylogenetic tree from a fitted \code{coevfit} object with +internal node IDs displayed, making it easy to identify node numbers +for use with \code{\link{coev_ancestral_states}}. The tree is returned +invisibly so it can be passed to \code{\link[ape]{identify.phylo}} for +interactive node selection. +} +\details{ +This function is a convenience wrapper around +\code{\link[ape]{plot.phylo}} and \code{\link[ape]{nodelabels}} that +displays internal node IDs using ape's numbering convention: tips are +numbered \code{1:N_tips} and internal nodes are +\code{(N_tips + 1):(N_tips + N_internal)}. + +In an interactive R session, the returned tree can be passed to +\code{identify()} to click on nodes and retrieve their IDs: + +\preformatted{ + tree <- coev_plot_node_labels(fit) + selected <- identify(tree) + coev_ancestral_states(fit, nodes = selected$nodes) + } +} +\examples{ +\dontrun{ +# fit dynamic coevolutionary model +fit <- coev_fit( + data = authority$data, + variables = list( + political_authority = "ordered_logistic", + religious_authority = "ordered_logistic" + ), + id = "language", + tree = authority$phylogeny, + chains = 4, + parallel_chains = 4, + seed = 1 +) + +# plot tree with node labels +coev_plot_node_labels(fit) + +# interactive node selection (in interactive R sessions) +tree <- coev_plot_node_labels(fit) +selected <- identify(tree) +coev_ancestral_states(fit, nodes = selected$nodes) +} + +} +\seealso{ +\code{\link{coev_ancestral_states}}, +\code{\link[ape]{plot.phylo}}, \code{\link[ape]{identify.phylo}} +} +\author{ +Erik Ringen \email{erikjacob.ringen@uzh.ch} +} diff --git a/tests/testthat/test-coev_plot_node_labels.R b/tests/testthat/test-coev_plot_node_labels.R new file mode 100644 index 0000000..313a7ed --- /dev/null +++ b/tests/testthat/test-coev_plot_node_labels.R @@ -0,0 +1,39 @@ +test_that("coev_plot_node_labels() produces expected errors and output", { + m01 <- readRDS(test_path("fixtures", "coevfit_example_01.rds")) + m01 <- reload_fit(m01, filename = "coevfit_example_01-1.csv") + # expect errors for invalid inputs + expect_error( + coev_plot_node_labels(object = "fail"), + "Argument 'object' must be a fitted coevolutionary model of class coevfit.", + fixed = TRUE + ) + expect_error( + coev_plot_node_labels(object = m01, tip_labels = "fail"), + "Argument 'tip_labels' must be TRUE or FALSE.", + fixed = TRUE + ) + expect_error( + coev_plot_node_labels(object = m01, node_cex = "fail"), + "Argument 'node_cex' must be a single positive number.", + fixed = TRUE + ) + expect_error( + coev_plot_node_labels(object = m01, node_cex = -1), + "Argument 'node_cex' must be a single positive number.", + fixed = TRUE + ) + expect_error( + coev_plot_node_labels(object = m01, node_cex = c(0.5, 0.6)), + "Argument 'node_cex' must be a single positive number.", + fixed = TRUE + ) + # should run without error and return phylo invisibly + expect_no_error(result <- coev_plot_node_labels(m01)) + expect_true(inherits(result, "phylo")) + # tip_labels = TRUE should also work + expect_no_error(coev_plot_node_labels(m01, tip_labels = TRUE)) + # custom node_cex and node_col + expect_no_error( + coev_plot_node_labels(m01, node_cex = 0.4, node_col = "blue") + ) +}) diff --git a/vignettes/ancestral_states.qmd b/vignettes/ancestral_states.qmd new file mode 100644 index 0000000..3042abf --- /dev/null +++ b/vignettes/ancestral_states.qmd @@ -0,0 +1,344 @@ +--- +title: "Ancestral State Reconstruction with coevolve" +format: + html: + toc: true + code-fold: false + fig-width: 8 + fig-height: 6 +execute: + warning: false + message: false +--- + +## Overview + +The `coev_ancestral_states()` function extracts posterior estimates of latent +trait values at internal (ancestral) nodes of the phylogeny from a fitted +`coevfit` model. Because the model estimates latent states at every node in the +tree, ancestral state reconstruction is a natural byproduct of model fitting --- +no separate analysis is needed. + +This notebook demonstrates the function using the **authority** dataset bundled +with the package: political and religious authority among 97 Austronesian +societies. + +## Setup + +```{r} +#| label: setup +library(coevolve) +library(ggplot2) +library(dplyr) +library(tidyr) +library(ape) +theme_set(theme_minimal(base_size = 13)) +``` + +## Fit the model + +We fit a coevolutionary model with two ordered-logistic variables. For +demonstration purposes we use moderate sampling settings; in practice you would +want more iterations and to check convergence carefully. + +```{r} +#| label: fit-model +#| cache: true +fit <- coev_fit( + data = authority$data, + variables = list( + political_authority = "ordered_logistic", + religious_authority = "ordered_logistic" + ), + id = "language", + tree = authority$phylogeny, + parallel_chains = 4, + chains = 4, + iter_sampling = 500, + iter_warmup = 500, + seed = 42 +) +``` + +Quick check that the model sampled adequately: + +```{r} +#| label: model-summary +summary(fit) +``` + +## Ancestral states on the latent scale + +The default call returns posterior summaries (median + 95% credible interval) for +all internal nodes on the latent (eta) scale: + +```{r} +#| label: asr-latent +asr_latent <- coev_ancestral_states(fit) +head(asr_latent) +``` + +The result is a tibble with one row per node-variable combination. The `node` +column uses ape's numbering convention (tips are `1:N_tips`, internal nodes are +`(N_tips+1):(2*N_tips-1)`), so it integrates directly with phylo objects. + +### Visualizing latent ancestral states on the tree + +We can paint the tree with estimated ancestral values by mapping the posterior +median to a diverging color gradient. Blue indicates low latent values; red +indicates high: + +```{r} +#| label: plot-latent-tree +#| fig-height: 10 +tree <- attr(asr_latent, "ref_tree") +n_tips <- length(tree$tip.label) +asr_all <- coev_ancestral_states(fit, nodes = "all") + +pal <- colorRampPalette(c("#2166AC", "#F7F7F7", "#B2182B"))(100) +global_range <- range(asr_all$estimate) + +par(mfrow = c(1, 2), mar = c(2, 0, 2, 0)) + +for (var in unique(asr_all$variable)) { + df_var <- asr_all |> filter(variable == var) + vals <- setNames(df_var$estimate, df_var$node) + + plot(tree, show.tip.label = FALSE, edge.width = 1.5, + edge.color = "grey70", main = gsub("_", " ", var), + no.margin = FALSE) + + internal_ids <- (n_tips + 1):(n_tips + tree$Nnode) + internal_vals <- vals[as.character(internal_ids)] + bins <- as.integer( + cut(internal_vals, + breaks = seq(global_range[1], global_range[2], length.out = 101)) + ) + bins[is.na(bins)] <- 50 + bins <- pmax(1, pmin(100, bins)) + nodelabels(pch = 21, bg = pal[bins], col = NA, cex = 1.2) +} + +# add shared color bar legend +par(fig = c(0.35, 0.65, 0.0, 0.05), new = TRUE, mar = c(0, 0, 0, 0)) +image( + x = seq(global_range[1], global_range[2], length.out = 100), + y = 1, + z = matrix(1:100, nrow = 100), + col = pal, + axes = FALSE, xlab = "", ylab = "" +) +axis(1, at = round(seq(global_range[1], global_range[2], length.out = 5), 1), + cex.axis = 0.8, padj = -1.5, tck = -0.3) +mtext("Latent value (eta)", side = 1, line = 1.2, cex = 0.7) +``` + +### Joint latent-space scatterplot + +We can also look at the joint distribution of ancestral states across the two +variables. Each point is an internal node, with crosshairs showing the 95% +credible interval: + +```{r} +#| label: plot-latent-scatter +asr_wide <- asr_latent |> + select(node, variable, estimate, lower, upper) |> + pivot_wider( + names_from = variable, + values_from = c(estimate, lower, upper) + ) + +ggplot(asr_wide, + aes(x = estimate_political_authority, + y = estimate_religious_authority)) + + geom_errorbar( + aes(ymin = lower_religious_authority, + ymax = upper_religious_authority), + alpha = 0.2, width = 0 + ) + + geom_errorbarh( + aes(xmin = lower_political_authority, + xmax = upper_political_authority), + alpha = 0.2, height = 0 + ) + + geom_point(color = "#B2182B", size = 2) + + labs( + x = "Political authority (latent)", + y = "Religious authority (latent)", + title = "Ancestral states at internal nodes" + ) +``` + +## Ancestral states on the response scale + +For ordered-logistic variables, the response scale returns estimated category +probabilities at each node --- how likely each level of authority (absent, +sublocal, local, supralocal) was at that ancestral node: + +```{r} +#| label: asr-response +asr_resp <- coev_ancestral_states( + fit, nodes = "all", scale = "response" +) +head(asr_resp) +``` + +Notice the output now has `prob_1`, `prob_2`, etc. columns instead of +`estimate`/`lower`/`upper`. Each row sums to 1 across probability columns. + +### Pie chart tree: response-scale probabilities + +This is the most intuitive way to visualize ordinal ancestral states. Each pie +chart at an internal node shows the posterior median probability of each +category. At the tips, observed values are shown as solid colors (one category +with probability 1). If a tip has missing data, the model-estimated +probabilities are shown instead. + +```{r} +#| label: plot-pie-tree +#| fig-height: 12 +#| fig-width: 10 +cat_labels <- c("Absent", "Sublocal", "Local", "Supralocal") +cat_colors <- c("#FFFFB2", "#FECC5C", "#FD8D3C", "#E31A1C") +prob_cols <- grep("^prob_", names(asr_resp), value = TRUE) +n_cats <- length(prob_cols) + +# build observed-value lookup: tip label -> integer category per variable +obs_data <- authority$data +obs_data$tip_label <- tree$tip.label[match(obs_data$language, + tree$tip.label)] + +par(mfrow = c(1, 2), mar = c(1, 0, 3, 0)) + +for (var in unique(asr_resp$variable)) { + df_var <- asr_resp |> + filter(variable == var) |> + arrange(node) + + plot(tree, show.tip.label = FALSE, edge.width = 1.5, + edge.color = "grey50", no.margin = FALSE, + main = gsub("_", " ", var)) + + # internal node pies (model estimates) + df_internal <- df_var |> filter(node > n_tips) |> arrange(node) + pie_mat <- as.matrix(df_internal[, prob_cols]) + nodelabels(pie = pie_mat, piecol = cat_colors, cex = 0.6) + + # tip pies: observed values when available, model estimates when missing + tip_pie <- matrix(0, nrow = n_tips, ncol = n_cats) + for (i in seq_len(n_tips)) { + tip_name <- tree$tip.label[i] + row_idx <- match(tip_name, obs_data$language) + obs_val <- if (!is.na(row_idx)) obs_data[[var]][row_idx] else NA + if (!is.na(obs_val)) { + # observed: deterministic pie (all mass on one category) + cat_idx <- as.integer(obs_val) + tip_pie[i, cat_idx] <- 1 + } else { + # missing: use model-estimated probabilities + model_row <- df_var |> filter(node == i) + tip_pie[i, ] <- as.numeric(model_row[, prob_cols]) + } + } + tiplabels(pie = tip_pie, piecol = cat_colors, cex = 0.4) +} + +# shared legend +par(fig = c(0.3, 0.7, 0.0, 0.05), new = TRUE, mar = c(0, 0, 0, 0)) +plot.new() +legend("center", legend = cat_labels, fill = cat_colors, + horiz = TRUE, bty = "n", cex = 0.9, title = "Authority level") +``` + +## Working with raw posterior draws + +Setting `summary = FALSE` returns the full posterior array, which is useful for +custom summaries or propagating uncertainty: + +```{r} +#| label: asr-draws +asr_draws <- coev_ancestral_states(fit, summary = FALSE) +str(asr_draws, max.level = 1) +``` + +The `draws` element is a 3D array with dimensions `[draws, nodes, variables]`. +Here's an example: the posterior density of latent values at the root node for +both variables: + +```{r} +#| label: plot-root-density +root_node_idx <- which(asr_draws$node_ids == n_tips + 1) + +root_df <- data.frame( + political_authority = asr_draws$draws[, root_node_idx, 1], + religious_authority = asr_draws$draws[, root_node_idx, 2] +) |> + pivot_longer(everything(), names_to = "variable", values_to = "eta") + +ggplot(root_df, aes(x = eta, fill = variable)) + + geom_density(alpha = 0.5) + + scale_fill_manual( + values = c(political_authority = "#2166AC", + religious_authority = "#B2182B"), + labels = c("Political", "Religious"), + name = "Authority" + ) + + labs( + x = "Latent value (eta)", + y = "Density", + title = "Posterior distribution at the root node" + ) +``` + +## Identifying nodes on the tree + +To query ancestral states for specific nodes, you first need to know their IDs. +The `coev_plot_node_labels()` function plots the tree with internal node IDs +displayed in red: + +```{r} +#| label: plot-node-labels +#| fig-height: 10 +tree <- coev_plot_node_labels(fit) +``` + +Node numbering follows ape's convention: tips are `1:N_tips` and internal nodes +are `(N_tips + 1):(2 * N_tips - 1)`. + +### Interactive node selection + +In an interactive R session you can click directly on the tree to identify nodes. +After plotting, call `identify()` on the returned tree object --- click on nodes +of interest, then press Escape to finish: + +```{r} +#| label: identify-nodes +#| eval: false +tree <- coev_plot_node_labels(fit) +selected <- identify(tree) +# selected$nodes contains the node IDs you clicked on +coev_ancestral_states(fit, nodes = selected$nodes) +``` + +## Selecting specific nodes and variables + +Once you know the node IDs, you can target specific nodes or variables to reduce +computation and focus the output: + +```{r} +#| label: asr-subset +# only religious authority, at three specific internal nodes +asr_sub <- coev_ancestral_states( + fit, + variables = "religious_authority", + nodes = c(n_tips + 1, n_tips + 2, n_tips + 3) +) +asr_sub +``` + +## Session info + +```{r} +#| label: session-info +sessionInfo() +``` From 376aefa65e5ee66145aa219bdc6219fd758a22f8 Mon Sep 17 00:00:00 2001 From: Erik Ringen Date: Mon, 27 Apr 2026 10:19:15 +0100 Subject: [PATCH 4/8] Convert ASR vignette from qmd to static Rmd Match the format of the existing coevolve.Rmd vignette: static code blocks with pre-rendered output, pre-generated PNG figures, and proper R vignette metadata (VignetteIndexEntry, rmarkdown::html_vignette, pkgdown: as_is). This avoids requiring Quarto or expensive model fitting during package build. Co-Authored-By: Claude Opus 4.6 (1M context) --- ...estral_states.qmd => ancestral_states.Rmd} | 199 +++++++++++++----- vignettes/asr-latent-scatter-1.png | Bin 0 -> 72340 bytes vignettes/asr-latent-tree-1.png | Bin 0 -> 85672 bytes vignettes/asr-node-labels-1.png | Bin 0 -> 72803 bytes vignettes/asr-pie-tree-1.png | Bin 0 -> 173929 bytes vignettes/asr-root-density-1.png | Bin 0 -> 52416 bytes 6 files changed, 150 insertions(+), 49 deletions(-) rename vignettes/{ancestral_states.qmd => ancestral_states.Rmd} (61%) create mode 100644 vignettes/asr-latent-scatter-1.png create mode 100644 vignettes/asr-latent-tree-1.png create mode 100644 vignettes/asr-node-labels-1.png create mode 100644 vignettes/asr-pie-tree-1.png create mode 100644 vignettes/asr-root-density-1.png diff --git a/vignettes/ancestral_states.qmd b/vignettes/ancestral_states.Rmd similarity index 61% rename from vignettes/ancestral_states.qmd rename to vignettes/ancestral_states.Rmd index 3042abf..14a5ff6 100644 --- a/vignettes/ancestral_states.qmd +++ b/vignettes/ancestral_states.Rmd @@ -1,14 +1,16 @@ --- title: "Ancestral State Reconstruction with coevolve" -format: - html: +output: + rmarkdown::html_vignette: toc: true - code-fold: false - fig-width: 8 - fig-height: 6 -execute: - warning: false - message: false +pkgdown: + as_is: true +date: "2026-04-27" +author: "Erik Ringen" +vignette: > + %\VignetteIndexEntry{Ancestral State Reconstruction with coevolve} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} --- ## Overview @@ -16,17 +18,16 @@ execute: The `coev_ancestral_states()` function extracts posterior estimates of latent trait values at internal (ancestral) nodes of the phylogeny from a fitted `coevfit` model. Because the model estimates latent states at every node in the -tree, ancestral state reconstruction is a natural byproduct of model fitting --- +tree, ancestral state reconstruction is a natural byproduct of model fitting -- no separate analysis is needed. -This notebook demonstrates the function using the **authority** dataset bundled +This vignette demonstrates the function using the **authority** dataset bundled with the package: political and religious authority among 97 Austronesian societies. ## Setup -```{r} -#| label: setup +``` r library(coevolve) library(ggplot2) library(dplyr) @@ -41,9 +42,7 @@ We fit a coevolutionary model with two ordered-logistic variables. For demonstration purposes we use moderate sampling settings; in practice you would want more iterations and to check convergence carefully. -```{r} -#| label: fit-model -#| cache: true +``` r fit <- coev_fit( data = authority$data, variables = list( @@ -60,24 +59,98 @@ fit <- coev_fit( ) ``` +``` +Running MCMC with 4 parallel chains... + +Chain 4 finished in 84.6 seconds. +Chain 3 finished in 114.0 seconds. +Chain 1 finished in 115.0 seconds. +Chain 2 finished in 119.0 seconds. + +All 4 chains finished successfully. +Mean chain execution time: 108.1 seconds. +Total execution time: 119.2 seconds. +``` + Quick check that the model sampled adequately: -```{r} -#| label: model-summary +``` r summary(fit) ``` +``` +Variables: political_authority = ordered_logistic + religious_authority = ordered_logistic + Data: authority$data (Number of observations: 97) +Phylogeny: authority$phylogeny (Number of trees: 1) + Draws: 4 chains, each with iter = 500; warmup = 500; thin = 1 + total post-warmup draws = 2000 + +Autoregressive selection effects: + Estimate Est.Error 2.5% 97.5% Rhat Bulk_ESS Tail_ESS +political_authority -0.53 0.44 -1.64 -0.02 1.00 1420 1270 +religious_authority -0.60 0.48 -1.82 -0.03 1.00 1549 1137 + +Cross selection effects: + Estimate Est.Error 2.5% 97.5% Rhat +political_authority ⟶ religious_authority 1.50 0.74 -0.04 2.87 1.00 +religious_authority ⟶ political_authority 1.05 0.83 -0.62 2.64 1.00 + Bulk_ESS Tail_ESS +political_authority ⟶ religious_authority 842 1055 +religious_authority ⟶ political_authority 701 1384 + +Drift parameters: + Estimate Est.Error 2.5% 97.5% +sd(political_authority) 2.15 0.82 0.37 3.70 +sd(religious_authority) 1.46 0.82 0.13 3.10 +cor(political_authority,religious_authority) 0.37 0.30 -0.35 0.85 + Rhat Bulk_ESS Tail_ESS +sd(political_authority) 1.00 453 406 +sd(religious_authority) 1.01 416 887 +cor(political_authority,religious_authority) 1.00 1116 1360 + +Continuous time intercept parameters: + Estimate Est.Error 2.5% 97.5% Rhat Bulk_ESS Tail_ESS +political_authority 0.31 0.91 -1.55 2.12 1.00 2426 1337 +religious_authority 0.31 0.91 -1.47 2.14 1.01 3135 1612 + +Ordinal cutpoint parameters: + Estimate Est.Error 2.5% 97.5% Rhat Bulk_ESS Tail_ESS +political_authority[1] -1.44 0.88 -3.13 0.23 1.00 1266 1010 +political_authority[2] -0.70 0.86 -2.36 1.01 1.00 1418 1276 +political_authority[3] 1.48 0.86 -0.20 3.19 1.00 1661 1415 +religious_authority[1] -1.59 0.92 -3.32 0.24 1.00 1424 1248 +religious_authority[2] -0.92 0.90 -2.61 0.87 1.00 1699 1531 +religious_authority[3] 1.45 0.92 -0.24 3.28 1.00 1913 1488 +``` + +``` +Warning: There were 2 divergent transitions after warmup. +http://mc-stan.org/misc/warnings.html#divergent-transitions-after-warmup +``` + ## Ancestral states on the latent scale The default call returns posterior summaries (median + 95% credible interval) for all internal nodes on the latent (eta) scale: -```{r} -#| label: asr-latent +``` r asr_latent <- coev_ancestral_states(fit) head(asr_latent) ``` +``` +# A tibble: 6 x 6 + node variable estimate lower upper clade_pp + +1 98 political_authority 0.377 -1.44 2.15 1 +2 98 religious_authority 0.292 -1.52 1.92 1 +3 99 political_authority 0.363 -1.39 2.20 1 +4 99 religious_authority 0.282 -1.44 1.87 1 +5 100 political_authority 0.235 -1.94 2.44 1 +6 100 religious_authority 0.276 -1.61 2.20 1 +``` + The result is a tibble with one row per node-variable combination. The `node` column uses ape's numbering convention (tips are `1:N_tips`, internal nodes are `(N_tips+1):(2*N_tips-1)`), so it integrates directly with phylo objects. @@ -88,9 +161,7 @@ We can paint the tree with estimated ancestral values by mapping the posterior median to a diverging color gradient. Blue indicates low latent values; red indicates high: -```{r} -#| label: plot-latent-tree -#| fig-height: 10 +``` r tree <- attr(asr_latent, "ref_tree") n_tips <- length(tree$tip.label) asr_all <- coev_ancestral_states(fit, nodes = "all") @@ -133,14 +204,17 @@ axis(1, at = round(seq(global_range[1], global_range[2], length.out = 5), 1), mtext("Latent value (eta)", side = 1, line = 1.2, cex = 0.7) ``` +
+plot of chunk asr-latent-tree +
+ ### Joint latent-space scatterplot We can also look at the joint distribution of ancestral states across the two variables. Each point is an internal node, with crosshairs showing the 95% credible interval: -```{r} -#| label: plot-latent-scatter +``` r asr_wide <- asr_latent |> select(node, variable, estimate, lower, upper) |> pivot_wider( @@ -169,20 +243,35 @@ ggplot(asr_wide, ) ``` +
+plot of chunk asr-latent-scatter +
+ ## Ancestral states on the response scale For ordered-logistic variables, the response scale returns estimated category -probabilities at each node --- how likely each level of authority (absent, +probabilities at each node -- how likely each level of authority (absent, sublocal, local, supralocal) was at that ancestral node: -```{r} -#| label: asr-response +``` r asr_resp <- coev_ancestral_states( fit, nodes = "all", scale = "response" ) head(asr_resp) ``` +``` +# A tibble: 6 x 7 + node variable prob_1 prob_2 prob_3 prob_4 clade_pp + +1 1 political_authority 0.0442 0.0419 0.346 0.536 1 +2 1 religious_authority 0.0348 0.0284 0.340 0.581 1 +3 2 political_authority 0.107 0.0830 0.403 0.323 1 +4 2 religious_authority 0.0889 0.0636 0.427 0.342 1 +5 3 political_authority 0.0763 0.0645 0.399 0.417 1 +6 3 religious_authority 0.0604 0.0458 0.421 0.435 1 +``` + Notice the output now has `prob_1`, `prob_2`, etc. columns instead of `estimate`/`lower`/`upper`. Each row sums to 1 across probability columns. @@ -194,10 +283,7 @@ category. At the tips, observed values are shown as solid colors (one category with probability 1). If a tip has missing data, the model-estimated probabilities are shown instead. -```{r} -#| label: plot-pie-tree -#| fig-height: 12 -#| fig-width: 10 +``` r cat_labels <- c("Absent", "Sublocal", "Local", "Supralocal") cat_colors <- c("#FFFFB2", "#FECC5C", "#FD8D3C", "#E31A1C") prob_cols <- grep("^prob_", names(asr_resp), value = TRUE) @@ -250,23 +336,33 @@ legend("center", legend = cat_labels, fill = cat_colors, horiz = TRUE, bty = "n", cex = 0.9, title = "Authority level") ``` +
+plot of chunk asr-pie-tree +
+ ## Working with raw posterior draws Setting `summary = FALSE` returns the full posterior array, which is useful for custom summaries or propagating uncertainty: -```{r} -#| label: asr-draws +``` r asr_draws <- coev_ancestral_states(fit, summary = FALSE) str(asr_draws, max.level = 1) ``` +``` +List of 4 + $ draws : num [1:2000, 1:96, 1:2] 0.914 0.294 1.224 0.221 0.319 ... + $ ref_tree :List of 5 + $ node_ids : int [1:96] 98 99 100 101 102 103 104 105 106 107 ... + $ variable_names: chr [1:2] "political_authority" "religious_authority" +``` + The `draws` element is a 3D array with dimensions `[draws, nodes, variables]`. Here's an example: the posterior density of latent values at the root node for both variables: -```{r} -#| label: plot-root-density +``` r root_node_idx <- which(asr_draws$node_ids == n_tips + 1) root_df <- data.frame( @@ -290,30 +386,34 @@ ggplot(root_df, aes(x = eta, fill = variable)) + ) ``` +
+plot of chunk asr-root-density +
+ ## Identifying nodes on the tree To query ancestral states for specific nodes, you first need to know their IDs. The `coev_plot_node_labels()` function plots the tree with internal node IDs displayed in red: -```{r} -#| label: plot-node-labels -#| fig-height: 10 +``` r tree <- coev_plot_node_labels(fit) ``` +
+plot of chunk asr-node-labels +
+ Node numbering follows ape's convention: tips are `1:N_tips` and internal nodes are `(N_tips + 1):(2 * N_tips - 1)`. ### Interactive node selection In an interactive R session you can click directly on the tree to identify nodes. -After plotting, call `identify()` on the returned tree object --- click on nodes +After plotting, call `identify()` on the returned tree object -- click on nodes of interest, then press Escape to finish: -```{r} -#| label: identify-nodes -#| eval: false +``` r tree <- coev_plot_node_labels(fit) selected <- identify(tree) # selected$nodes contains the node IDs you clicked on @@ -325,8 +425,7 @@ coev_ancestral_states(fit, nodes = selected$nodes) Once you know the node IDs, you can target specific nodes or variables to reduce computation and focus the output: -```{r} -#| label: asr-subset +``` r # only religious authority, at three specific internal nodes asr_sub <- coev_ancestral_states( fit, @@ -336,9 +435,11 @@ asr_sub <- coev_ancestral_states( asr_sub ``` -## Session info - -```{r} -#| label: session-info -sessionInfo() +``` +# A tibble: 3 x 6 + node variable estimate lower upper clade_pp + +1 98 religious_authority 0.292 -1.52 1.92 1 +2 99 religious_authority 0.282 -1.44 1.87 1 +3 100 religious_authority 0.276 -1.61 2.20 1 ``` diff --git a/vignettes/asr-latent-scatter-1.png b/vignettes/asr-latent-scatter-1.png new file mode 100644 index 0000000000000000000000000000000000000000..239f20c15f522fc1b54e44a030a2b8abd3c6f4b3 GIT binary patch literal 72340 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
qctb`hD*Ox)`HrGb!9>y2&VO?+JMv?%hrs2 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%0ANt+aoKYZlpgK~xz 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%0D$NLVP; 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%0Dk+%0kbE%}oaxu8F`PPlO|X`@MW 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≪N=X!bmg?vyS(~irO$ZzoSigTzfpXwQC)u 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