Comparable-Strata Designer and reproducible code — a unified clinical-biostatistics methodology series (M1–M31)
Abstract
Open-source interactive 'designer mode' planners and the accompanying reproducible analysis, verification, and figure code for the methodology series on building comparable strata. Each figure is generated programmatically from the deposited code with fixed seeds; every numbered result carries a provenance tag and a code reference. Comparable-Strata Designer — Software record Version 2.28.0 — 2026-07-04 Concept DOI: 10.5281/zenodo.20709963 (MIT) Companion derivations record: 10.5281/zenodo.20710253 (companion update: derivations 1.10.0) Baseline already published: 2.27.0 was a housekeeping roll-up: it refreshes the figure scripts and their generated outputs to the current working-tree state accumulated since 2.26.0. Author: William J. Dwyer · ORCID 0009-0004-0855-7222 CHANGELOG Version 2.28.0 is a synchronization roll-up: it brings the archived figure scripts and theirgenerated outputs into agreement with the figures now used in the consolidated Moment-RatioTriage manuscript (M1u). No tool behavior, planner logic, core function, or numerical resultchanged; this release only updates figure-generation scripts and their rendered outputs. New in the tree (the two figures native to the consolidated paper): - m1u_work/fig_master_plane.py — the moment-ratio (Cullen-Frey) plane and its four regions: one map from the skewness and the excess kurtosis, with the moment bound, the family loci (log-normal, gamma ray, Weibull) and the Region I-IV tints and landmark points. - m1u_work/fig_unified_pathway.py — the unified decision pathway: one flowchart that routes any continuous outcome from the first two shape moments to a matched analysis, with the Region IV continuity node and the distribution-free backstop. Refreshed figure scripts (label placement / legibility only; the plotted mathematics isunchanged): - m1b_work/fig_natural_atlas.py — Region II natural-domain atlas: direct on-curve labels for the moment bound, the gamma (Pearson III) line, the Weibull locus, and the log-normal (Johnson S_L) line; the reflected-log-normal note "= -X for log-normal X"; family-anchor labels recentred; Johnson S_B label moved into the bounded region. - m1c_work/fig_m1c_ladder.py — Region III kurtosis ladder: the "normal" anchor label lifted off the y=0 line; the platykurtic descriptive block repositioned clear of the uniform anchor; the light lower-region shading extended to the axis. - m1d_work/fig_m1d_bound.py — Region IV moment bound: the "near the bound" guidance recast as a four-line pointered label; the mixtures arrow realigned to its caption; the arcsine, uniform, and skewed-two-point labels repositioned with a leader added to the arcsine point. In-zip metadata (.zenodo.json, CITATION.cff, codemeta.json) is bumped to 2.28.0 / 2026-07-04.The build is a snapshot of the current root working tree (manuscripts, internal strategy files,and the _not_for_deposit set remain excluded, as in prior releases). The per-paperreproducibility packages (e.g. M1a v1.1.0, M1u v1.0.0) remain separate Data Files that citethis record; they are not versions of it. Previous History: Version 2.27.0 is a housekeeping roll-up: it refreshes the figure scripts and their generated outputs to the current working-tree state accumulated since 2.26.0. No tool behavior, planner logic, or numerical result changed; this is a synchronization release so the archived software matches the figures now used in the manuscripts. The substantive script change is the log-domain distributional-atlas figure (m1_work/distribution_atlas/fig_distribution_atlas.py): the "exponential (gamma k=1 = Weibull)" annotation in Panel A was repositioned for legibility (and the archived copy is standalone — it writes only its PNG/SVG, with no path into a manuscript working tree). The remaining changes are regenerated figure outputs — the Cushings Figure 1 corrections (fig_cushings.py and its PNGs) and a set of regenerated heatmap/flow panels across several work folders — plus the atlas derivation-note build script and one gamma-rescue heatmap script brought to their currentform. In-zip metadata (.zenodo.json, CITATION.cff, codemeta.json, MANIFEST.txt) is bumped to 2.27.0 / 2026-07-02. The per-paper reproducibility packages (e.g. M1a v1.1.0) remain journal Data Files that cite this record; they are not versions of it. CHANGELOG (vs published 2.26.0) CHG m1_work/distribution_atlas/fig_distribution_atlas.py — Figure 2 label reposition; standalone (PNG/SVG only). CHG m1_work/distribution_atlas/fig_distribution_atlas.png, build_distribution_atlas_derivation.py CHG fig_cushings.py, fig1_cushings.png, m1_work/fig1_cushings.png, m1_work/fig8_rescue_zone.png,m1_work/fig_gamma_rescue_heatmap.py, fig_flowchart_color.svg CHG regenerated heatmap/flow panels: nu10, m4, m24, hs1, dm8, pl1, nu3, m18, m25, m31, m19, m5, sp3, m3 (fig_*_heatmap.png / fig_*_flow.png) CHG .zenodo.json, CITATION.cff, codemeta.json, MANIFEST.txt — version 2.26.0 -> 2.27.0. Version 2.26.0 is a single, additive change to one file: the M1 atlas planner m1_work/strata_designer.html. Every other file is byte-identical to the published 2.25.0. The log-domain atlas now prints power-mean readings, completing the "one curve" picture in which all coordinates are readings of the cumulant generating function psi(p) = ln E[X^p] of ln X. It shows: QM/AM (the quadratic-to-arithmetic mean ratio, power p=2, sensitive to the upper tail; QM^2/AM^2 = 1 + CV^2); AM/HM (the arithmetic-to-harmonic mean ratio, power p=-1, sensitive to mass near zero); and the four-mean lognormality diagnostic D3 = 2 ln QM - 3 ln AM + ln HM = psi(2) - 3 psi(1) + 3 psi(0) - psi(-1). Because psi(p) is exactly quadratic in p for a lognormal, D3 vanishes there (and tends to 0 as a gamma's shape grows); a nonzero D3 flags departure from lognormality and its sign tracks the log-skewness direction (a heavy upper tail lifts QM/AM -> tail model; mass near zero lifts AM/HM -> floor/censoring model). Self-contained JavaScript; no dependencies. Mirrors Section 8 of the distribution_atlas derivation note (derivations record 1.9.0). In-zip metadata (.zenodo.json, CITATION.cff, codemeta.json, MANIFEST.txt) is bumped to 2.26.0 / 2026-07-01. CHG m1_work/strata_designer.html — the atlas planner adds power-mean readings: QM/AM (upper-tail, p=2), AM/HM (near-zero, p=-1), and the four-mean lognormality diagnostic D3 = 2 ln QM - 3 ln AM + ln HM (=0 for a lognormal; sign tracks the log-skewness). Completes the CGF "one curve" framing.CHG .zenodo.json, CITATION.cff, codemeta.json, MANIFEST.txt — version 2.25.0 -> 2.26.0 (2026-07-01). (No files added or removed. Diff vs 2.25.0 is exactly these five files; everything else is CRC-identical.) v2.25.0 — 2026-07-01 Version 2.25.0 is a single, additive change to one file: the M1 atlas planner m1_work/strata_designer.html. Every other file (all Python/R cores, the three M1b/M1c/M1d browser calculators, the M1 CV-screen calculator, and every other tool) is byte-identical to the published 2.24.0. The log-domain atlas now also prints the EFFICIENT fit-free shape estimate, from the log arithmetic-to-geometric-mean ratio Delta = ln(AM) - ln(GM), beside the existing L-based k-hat and the CV complement. For a gamma the maximum-likelihood equation for the shape is exactly ln k - psi(k) = Delta, so the tool's closed-form inversion returns the gamma MLE itself (about 100% efficient, versus about 1-2% for the log-skewness L). It is implemented with a self-contained digamma (psi) and a bracketed root solve; no dependencies. This mirrors Section 7 of the distribution_atlas derivation note in the companion derivations record (v1.8.0). In-zip metadata (.zenodo.json, CITATION.cff, codemeta.json, MANIFEST.txt) is bumped to 2.25.0 / 2026-07-01. CHG m1_work/strata_designer.html — the log-domain atlas planner now also prints the EFFICIENT fit-free shape estimate from the log AM/GM ratio Delta = ln(AM) - ln(GM): the closed-form inversion of ln k - psi(k) = Delta is the gamma MLE (~100% efficient vs ~1-2% for the log-skewness L), shown beside the L-based k-hat and the CV complement. Self-contained digamma + root solve; no dependencies.CHG .zenodo.json, CITATION.cff, codemeta.json, MANIFEST.txt — version 2.24.0 -> 2.25.0 (2026-07-01). v2.24.0 — 2026-06-30 A focused, additive release: three new browser calculators that complete the moment-ratio plane in the browser, alongside the M1 CV-screen calculator and the M1-embedded M1a atlas. They are pure, self-contained JavaScript (no dependencies), in the same single-file style as the existing tools. No existing file was removed or renumbered; the Python/R cores and every other tool are byte-identical to 2.23.0, except the M1 atlas planner m1_work/strata_designer.html, which gains an L/K readout (below). m1_work/strata_designer.html (updated) — the log-domain atlas now prints an L/K readout beneath the family ranking: the L-statistic (log-skewness) and K-statistic (log-kurtosis) each with their closed-form standard error, plus the fit-free implied gamma shape k̂ = L⁻¹(L) and the CV-based 1/CV² complement, with a note steering to the CV when L saturates near the lognormal limit. Mirrors the new §7 of the distribution_atlas derivation note in the companion record. m1b_work/m1b_natural_router.html — the M1b natural-domain skew-sign router. Reads a sample's skewness sign and routes it: positive → M1/M1a (log domain), negative → reflection / power-ladder / logit-beta by support (M1b), symmetric → M1c, near the moment bound → M1d. With two groups it runs the recovered test on the matched scale (a headroom ratio after reflection, an odds ratio after a logit); it finds the symmetrizing Box–Cox power itself and flips skew via reflection. m1c_work/m1c_kurtosis_rescue.html — the M1c kurtosis / robust-rescue selector. For a symmetric outcome it places the excess kurtosis on the ladder, gives the matched Student-t severity
Publication details
- Journal / source
- Zenodo (CERN European Organization for Nuclear Research)
- Publication date
- 4 July 2026