stratifyR: Optimal Stratification of Univariate Populations

Determines Optimum Strata Boundaries (OSB) and Optimum Sample Sizes (OSS) for univariate stratified sampling designs under Neyman allocation. The stratification variable is described by a best-fitting parametric distribution, selected automatically by AIC from a set of continuous families (normal, log-normal, gamma, Weibull, exponential, Cauchy, uniform, Pareto, triangular and right-triangular), and the optimum boundaries are obtained by minimising the Neyman objective. Version 2.0 keeps the Dynamic Programming (DP) solver of Reddy and Khan (2020), which is globally optimal for the fitted distribution, as the default. It adds two fast derivative-free solvers, a multi-start 'COBYLA' solver and a two-phase global solver that couples 'DIRECT-L' with 'BOBYQA' refinement, and an exact solver that runs dynamic programming on the sorted data and returns the partition with the smallest empirical Neyman cost. It also provides cost-constrained allocation with unequal per-stratum costs, a design-efficiency comparison (compare_designs), two- and three-dimensional and interactive visualisations, solution-quality diagnostics (a Cauchy-Schwarz optimality gap and KKT first-order residuals for the derivative-free solvers) and a self-contained 'shiny' application, while remaining backward compatible with the strata.data() and strata.distr() interface of version 1.x. The methodology follows Khan et al. (2008) <https://www150.statcan.gc.ca/n1/pub/12-001-x/2008002/article/10761-eng.pdf>, Reddy and Khan (2018) <doi:10.1111/anzs.12244> and Reddy and Khan (2020) <doi:10.1111/anzs.12301>.

Version: 2.0-2
Depends: R (≥ 4.1.0)
Imports: stats, utils, graphics, grDevices, MASS, fitdistrplus (≥ 1.1.0), nloptr (≥ 2.0.0), actuar, mc2d
Suggests: shiny, bslib, DT, readxl, stratification, plotly (≥ 4.10.0), testthat (≥ 3.0.0), knitr, rmarkdown, ggplot2, crayon, kableExtra, triangle
Published: 2026-10-14
DOI: 10.32614/CRAN.package.stratifyR
Author: Karuna G. Reddy ORCID iD [aut, cre], M. G. M. Khan [aut]
Maintainer: Karuna G. Reddy <karuna.reddy at auckland.ac.nz>
BugReports: https://github.com/karunaredz/stratifyR/issues
License: GPL (≥ 3)
URL: https://github.com/karunaredz/stratifyR
NeedsCompilation: no
Materials: NEWS
CRAN checks: stratifyR results

Documentation:

Reference manual: stratifyR.html , stratifyR.pdf
Vignettes: R Package 'stratifyR' (source, R code)

Downloads:

Package source: stratifyR_2.0-2.tar.gz
Windows binaries: r-devel: stratifyR_2.0-1.zip, r-release: stratifyR_2.0-1.zip, r-oldrel: stratifyR_2.0-1.zip
macOS binaries: r-release (arm64): stratifyR_2.0-2.tgz, r-oldrel (arm64): stratifyR_2.0-2.tgz, r-release (x86_64): stratifyR_2.0-2.tgz, r-oldrel (x86_64): stratifyR_2.0-2.tgz
Old sources: stratifyR archive

Linking:

Please use the canonical form https://CRAN.R-project.org/package=stratifyR to link to this page.