Skip to main content

Open implementation of the GBD disability-weight estimation pipeline (Salomon et al. 2012/2015): probit on paired comparisons, interval regression on population-health-equivalence responses, logit-space rescaling.

Project description

WelfareWeights Engine

tests

Open-source tooling to estimate disability weights from survey data. These are the valuations that turn health states into DALYs (disability-adjusted life years) for burden-of-disease work. Eventually we will extend that methodology to health and welfare states that are not yet well modeled.

This is the academic core of the WelfareWeights project. The companion survey platform (welfareweights.com) is managed separately; this repository is the freely reusable engine and its documentation.

Why

DALYs compress an enormous range of human experience into a single number, and the disability weights underneath them are estimated from public surveys using a methodology that most researchers cannot easily reproduce or extend. The goal here is to democratize and open-source that methodology. I want transparent, reproducible, and open code, so weights can be replicated, scrutinized, and computed for new states. This will help people doing burden-of-disease accounting, policy analysis, and welfare measurement more broadly.

Scope

  1. Replicate the gold-standard approach (Salomon et al.) that derives disability weights from paired-comparison and valuation survey data.
  2. Open-source it as a clean, well-documented library with user-friendly guides, so anyone can run survey data through it.
  3. Extend it to estimate weights for states the current instruments miss.

Understand and audit the method

docs/METHODS.md explains the whole estimator (what the survey questions ask, what each stage assumes, why the tricks work, what must be true for the weights to mean anything, and how to attack it), written for people who did econometrics years ago or who know math and code but never took it; methods.pdf is the same document typeset, with full citations and the validation evidence as an appendix (that link opens the PDF in your browser's own viewer, where the hyperlinks work; GitHub's embedded PDF pane does not support links, so use this one rather than browsing to docs/methods.pdf). examples/quickstart.py runs the full pipeline with uncertainty intervals on synthetic data with known true weights, in about fifteen seconds. A browsable index of all of this, with every link opening in a new tab, is at welfareweights.github.io/engine.

Validation

The original survey microdata is not public, so the estimator is validated the hard way instead: known-truth recovery from the assumed data-generating process, metamorphic invariance tests, loud-failure tests for every identification hazard we found in review, a link-robustness cross-check, held-out fit diagnostics, Monte Carlo coverage tests of the bootstrap intervals, a misspecification battery, and a full-scale run at the published GBD 2010 design size (220 states, 14,000 respondents: rank correlation 0.9997, mean error 0.005). The evidence, including the one documented blind spot, is collected in docs/VALIDATION.md; the studies behind it are reproducible from studies/ with recorded seeds.

Status

Early and under active construction. The estimation pipeline is implemented and validated against synthetic data (see above) while we request the original survey data; the roadmap is in ROADMAP.md. Expect interfaces to change. Watch or star the repo to follow along.

License

Two licenses, by artifact type:

Note that raw survey responses are governed by respondent consent and privacy rules, not by these licenses, and are not published here.

Citation

If you use this work, please cite it via the "Cite this repository" button (see CITATION.cff). A versioned DOI will be added on first release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

welfareweights-0.1.0.tar.gz (49.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

welfareweights-0.1.0-py3-none-any.whl (38.6 kB view details)

Uploaded Python 3

File details

Details for the file welfareweights-0.1.0.tar.gz.

File metadata

  • Download URL: welfareweights-0.1.0.tar.gz
  • Upload date:
  • Size: 49.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for welfareweights-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4b0c68ca6386b38c295e0653077707560d04220ab004e1a55af8933dcec5b725
MD5 7cc536442288fcd869a0b93305226c2c
BLAKE2b-256 8cd86cf72cdd7fc536299e922b71cb4f872629b903856c862de876e855f559fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for welfareweights-0.1.0.tar.gz:

Publisher: publish.yml on welfareweights/engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file welfareweights-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: welfareweights-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 38.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for welfareweights-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b2fcdb2e242ed72b65a979e9049f4ba94870b4afaee61968367c83f16e4999e5
MD5 be1d3301d2e3b33131bead7e76eeee31
BLAKE2b-256 00609fdaaa385cd164ecf7124fb9a51a8b66276733115b316211a0c2af4439bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for welfareweights-0.1.0-py3-none-any.whl:

Publisher: publish.yml on welfareweights/engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page