Skip to contents

Traces the MDSA descendant family by fitting CTA models starting at start_mindenom and stepping according to the novometric MDSA rule: next MINDENOM = minimum terminal endpoint denominator + 1. The family terminates when a no-tree fit is produced or max_steps is reached.

Usage

cta_descendant_family(
  X,
  y,
  w = NULL,
  ...,
  start_mindenom = 1L,
  max_steps = 20L
)

Arguments

X

Data frame of predictor attributes; passed to oda_cta_fit.

y

Integer class vector; passed to oda_cta_fit.

w

Optional numeric case-weight vector; passed to oda_cta_fit.

...

Additional arguments forwarded to oda_cta_fit (e.g. alpha_split, prune_alpha, mc_iter, mc_seed, loo, miss_codes, verbose).

start_mindenom

Integer MINDENOM for the first family member. Defaults to 1L.

max_steps

Integer safety cap on the number of CTA fits; prevents unbounded loops. Defaults to 20L.

Value

A list of class cta_family with fields:

members

List of new_cta_family_member objects in order, including the terminal no-tree member.

mindenoms

Integer vector of MINDENOM values tried.

summary

Data frame with one row per member: mindenom, status ("valid_tree", "stump", or "no_tree"), strata, min_terminal_denom, overall_ess, d, no_tree.

min_d_idx

Integer index of the feasible (non-no-tree) member with minimum D; NA_integer_ if no feasible member exists.

terminated

Logical; always TRUE.

termination_reason

Character: one of "no_tree", "max_steps", "no_next_mindenom".