Data and code for "Exact Finite-Sample Inference for the Exponential Proportional Hazards Model via the Empirical Characteristic Function"

Published: 21 July 2026| Version 1 | DOI: 10.17632/nyd7y92chg.1
Contributor:

Description

Reproducibility package for the article submitted to Computational Statistics and Data Analysis. Contains six Python scripts that reproduce every table and closed-form result, the leukemia remission dataset (Freireich et al., 1963) used in the real-data example, and pre-computed outputs. Scripts cover Monte Carlo validation of the exact finite-sample bias/variance formulas, coverage of the exact confidence intervals, the Weibull PHM extension (known and unknown shape), a Cauchy ECF-vs-ML comparison, misspecification and dependent-censoring analyses, and a symbolic verification of all closed-form formulas. All results are fully reproducible with numpy, scipy and sympy under fixed random seeds.

Files

Steps to reproduce

Requirements: Python 3.10+ with numpy, scipy, and sympy. Install with: pip install -r requirements.txt All scripts are in the code/ folder and print the corresponding tables to the console. The dataset is in data/leukemia.csv. Fixed random seeds make every Monte Carlo result reproducible. 1. Verify the closed-form formulas (fast, symbolic). Run: python 06_exact_formulas_check.py This confirms the exact bias theta/(n-1), the exact variance formula and its asymptotic limit, the Fisher information and Cramer-Rao efficiency, the Cauchy information I(theta)=1/2, the Weibull identifying ratio, and the dependent-censoring probability limit. 2. Reproduce the real-data analysis (fast). Run: python 05_leukemia_analysis.py This reads data/leukemia.csv and outputs all reported numbers for the 6-MP and placebo arms (point estimates, exact SD, confidence intervals, median, bias correction) and the Weibull-vs-exponential likelihood-ratio goodness-of-fit test. 3. Reproduce the exponential-PHM Monte Carlo tables (~1-2 min). Run: python 01_exponential_phm_mc.py Outputs the bias/RMSE table (vs the exact formula), the confidence-interval coverage table across censoring levels, and the comparison with the censoring-ignorant estimator. 4. Reproduce the Weibull tables (~3-5 min). Run: python 02_weibull_phm_mc.py Outputs the known-shape efficiency table, the unknown-shape consistency table, and the moment-estimator-vs-MLE efficiency comparison. 5. Reproduce the Cauchy comparison (~2-3 min). Run: python 03_cauchy_ecf_vs_ml.py Outputs the ECF-vs-ML RMSE table against the Cramer-Rao bound sqrt(2/n). 6. Reproduce the robustness analyses (~3-5 min). Run: python 04_misspecification.py Outputs the distributional-misspecification table and the dependent-censoring table, plus a large-sample check of the probability limit. To save any output to a file, redirect it, e.g.: python 01_exponential_phm_mc.py > ../results/table_exponential.txt Pre-computed outputs of all six scripts are already provided in the results/ folder for direct comparison. Small last-digit differences across numpy versions are within Monte Carlo error and do not affect any conclusion.

Institutions

Categories

Statistics, Applied Probability

Licence