Skip to contents

stochtree 0.4.1

New Features

Bug Fixes

Documentation and Other Maintenance

  • Converted all R man page titles to title case #310

stochtree 0.4.0

CRAN release: 2026-03-06

New Features

  • Added support for ordinal outcome modeling through complementary log-log link function in the BART models (#196)
  • Added __str__, __repr__, summary, and extract_parameter methods in Python for the BARTModel and BCFModel classes (#298)
  • Added plotting utility function (plot_parameter_trace) in Python that operates on both the BARTModel and BCFModel classes (#298)
  • Added vignettes for summary / model inspection utilities in both R and Python (#298)
  • Added print methods in R and __str__ methods in Python for the forest container and random effects container objects (#298)
  • Updated R documentation to group related functions into topics (#302):
    • BARTSerialization
    • BCFSerialization
    • ForestSamplesSerialization
    • RandomEffectSamplesSerialization
    • DataPreprocessing
    • ForestKernelComputation
    • ForestStateManagement
    • RandomEffectStateManagement
  • Converted the following R function names from snake case to camel case (#302):
    • compute_bart_posterior_interval -> computeBARTPosteriorInterval
    • compute_bcf_posterior_interval -> computeBCFPosteriorInterval
    • compute_contrast_bart_model -> computeContrastBARTModel
    • compute_contrast_bcf_model -> computeContrastBCFModel
    • extract_parameter -> extractParameter
    • sample_bart_posterior_predictive -> sampleBARTPosteriorPredictive
    • sample_bcf_posterior_predictive -> sampleBCFPosteriorPredictive

Bug Fixes

  • Fixed status logging bugs for multi-chain R MCMC loops (#298)

stochtree 0.3.1

CRAN release: 2026-02-12

New Features

  • Replaced C++ standard library distributions (discrete_distribution, uniform_real_distribution, normal_distribution, and gamma_distribution) with custom implementations for cross-platform reproducibility.
  • Substituted custom implementations for base R mean(), var(), and sd() in the preprocessing logic of the R bart() and bcf() functions for enhanced numeric stability across platforms.

stochtree 0.3.0

CRAN release: 2026-01-27

New Features

  • Added print, summary, plot, and extract_parameter generic functions in R for the bartmodel and bcfmodel classes (#271)

Bug Fixes

  • Fix R bug where our approach to temporarily modifying users’ RNG state failed if .Random.seed did not exist (i.e. if the R RNG hadn’t yet been accessed by an R session) (#258)
  • Fix prediction bug for R BART models with random effects with labels that aren’t straightforward 1:num_groups integers when only y_hat is requested (#256)
  • Fix issue with C++ standard specification in Windows R package config (#276)

stochtree 0.2.1

CRAN release: 2025-12-11

Bug Fixes

  • Fix prediction bug for univariate random effects models in R (#248)
  • Fix prediction bug for Python BART and BCF models with random effects with labels that aren’t straightforward 0:(num_groups-1) integers (#256)

Other Changes

  • Encode expectations about which combinations of BART / BCF features work together and ensure warning (#250)

stochtree 0.2.0

CRAN release: 2025-11-22

New Features

  • Support for multithreading in various elements of the GFR and MCMC algorithms (#182)
  • Support for binary outcomes in BART and BCF with a probit link (#164)
  • Enable “restricted sweep” of tree algorithms over a handful of trees (#173)
  • Support for multivariate treatment in R (#183)
  • Enable modification of dataset variables (weights, etc…) via low-level interface (#194)

Computational Improvements

  • Modified default random effects initialization (#190)
  • Avoid double prediction on training set (#178)

Bug Fixes

  • Fixed indexing bug in cleanup of grow-from-root (GFR) samples in BART and BCF models
  • Avoid using covariate preprocessor in computeForestLeafIndices function when a ForestSamples object is provided (rather than a bartmodel or bcfmodel object)
  • Correctly compute feature-specific split counts in R and Python (#220)
  • Avoid override of user-specified num_burnin parameter in BCF models with an internal propensity score (#222)
  • Outcome predictions correctly incorporate adaptive coding of untreated observations in BCF with binary treatment (#231)

Documentation Improvements

  • Clarify structure / layout of samples when users request multiple chains in BART and BCF models (#220)

Other Changes

  • Standardized naming conventions for data elements of BART and BCF models across R and Python interfaces
    • Covariates / features are always referred to as “X
    • Treatment is always referred to as “Z
    • Propensity scores are referred to as “propensity” (rather than “pi”)
    • Outcomes are referred to as “y
    • Basis vectors for leaf-wise regression models in forest terms are referred to as “leaf_basis
    • Group labels for additive random effects models are referred to as “rfx_group_ids
    • Basis vectors for additive random effects models are referred to as “rfx_basis
  • Run-time checks for variables that are treated as continuous but have many “ties” (which presents issues with the current GFR algorithm) when only GFR samples are requested (#243)

stochtree 0.1.1

CRAN release: 2025-02-08

  • Fixed initialization bug in several R package code examples for random effects models

stochtree 0.1.0

CRAN release: 2025-02-07

  • Initial release on CRAN.
  • Support for sampling stochastic tree ensembles using two algorithms: MCMC and Grow-From-Root (GFR)
  • High-level model types supported:
    • Supervised learning with constant leaves or user-specified leaf regression models
    • Causal effect estimation with binary or continuous treatments
  • Additional high-level modeling features:
    • Forest-based variance function estimation (heteroskedasticity)
    • Additive (univariate or multivariate) group random effects
    • Multi-chain sampling and support for parallelism
    • “Warm-start” initialization of MCMC forest samplers via the Grow-From-Root (GFR) algorithm
    • Automated preprocessing / handling of categorical variables
  • Low-level interface:
    • Ability to combine a forest sampler with other (additive) model terms, without using C++
    • Combine and sample an arbitrary number of forests or random effects terms