Package: stratifyR
Type: Package
Title: Optimal Stratification of Univariate Populations
Version: 2.0-3
Date: 2026-10-16
Authors@R: c(
    person("Karuna G.", "Reddy",
           email   = "karuna.reddy@auckland.ac.nz",
           role    = c("aut", "cre"),
           comment = c(ORCID = "0000-0002-9467-4668")),
    person("M. G. M.", "Khan",
           email  = "mgm.khan@usp.ac.fj",
           role   = "aut")
  )
Description: 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>.
License: GPL (>= 3)
URL: https://github.com/karunaredz/stratifyR
BugReports: https://github.com/karunaredz/stratifyR/issues
Encoding: UTF-8
LazyData: true
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
VignetteBuilder: knitr
RoxygenNote: 7.3.1
NeedsCompilation: no
Config/pak/sysreqs: cmake make libicu-dev
Repository: https://karunaredz.r-universe.dev
Date/Publication: 2026-10-17 22:31:30 UTC
RemoteUrl: https://github.com/karunaredz/stratifyr
RemoteRef: HEAD
RemoteSha: c5c2b2a749b7e4f9bbf166ae72270890459fda5a
Packaged: 2026-10-17 22:41:47 UTC; root
Author: Karuna G. Reddy [aut, cre] (ORCID:
    <https://orcid.org/0000-0002-9467-4668>),
  M. G. M. Khan [aut]
Maintainer: Karuna G. Reddy <karuna.reddy@auckland.ac.nz>
