Skip to main content

Survey Kit

Tools for addressing missing data problems (nonresponse bias and item missingness) including extremely fast calibration weighting and machine learning-based imputation.

A furlough project inspired by the code used for the U.S. Census Bureau for the National Experimental Wellbeing Statistics (NEWS) project.

Installation

uv add survey-kit
# or
pip install survey-kit

Running regressions with multiply imputed data (below) can be easier with the tools noted below, but they are not added as dependencies by default. Add only what you use:

uv add "survey-kit[pyfixest]"    # or [statsmodels], [linearmodels], [polars-ds], [r], [stata]
uv add "survey-kit[all-stats]"   # everything at once

For R and Stata, there's some additional setup you need to do to get them working with python. See rpy2's installation instructions and pystata's documentation.

Older Linux (e.g., RHEL 7)

Many dependencies (mkl, pyarrow, lightgbm, numba, igraph, ...) have stopped publishing wheels for old glibc versions (< 2.28). Use the old-linux extra, which pins the last versions that still have compatible wheels:

uv add "survey-kit[old-linux]"

Features

  • Calibration Weighting - Fast entropy balancing for nonresponse bias
  • SRMI Imputation - ML-based multiple imputation with checkpointing
  • Statistics & Standard Errors - Proper variance estimation for complex surveys
  • Running regressions with multiply imputed data using standard python, R, or Stata tools - statsmodels, linearmodels, pyfixest, R, and Stata behind one interface

Works with Polars, Pandas, Arrow, and DuckDB.

Documentation

Full documentation: https://jrothbaum.github.io/survey_kit/

Support

License

This project is in the public domain within the United States, and copyright and related rights in the work worldwide are waived through the CC0 1.0 Universal public domain dedication.

Metadata

Release files for survey-kit 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for survey-kit 0.2.2
File Size Uploaded Provenance Actions
survey_kit-0.2.2.tar.gz 18.4 MB Without provenance Details for survey_kit-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for survey-kit 0.2.2
File Interpreter ABI Platform Actions
survey_kit-0.2.2-py3-none-any.whl Python 3 none any Details for survey_kit-0.2.2-py3-none-any.whl

Total release size: 18.9 MB

Release files / survey_kit-0.2.2.tar.gz

Download URL survey_kit-0.2.2.tar.gz
Size 18.4 MB
Tags Source
SHA-256 checksum
How to use checksums
4d4eca6db0617e433630a6a9ab6ea418f2d7bd4b502a2458683983b16925ae8f
BLAKE2b-256 checksum
How to use checksums
1b36e6b66451de6a217b8243ba75cb6d65efae111557193556667d0c6fdc5958
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / survey_kit-0.2.2-py3-none-any.whl

Download URL survey_kit-0.2.2-py3-none-any.whl
Size 445.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c4f6b8bccab49d0c71af9514e06bafbf3f45c6cd076e697e0d20392f68f9b429
BLAKE2b-256 checksum
How to use checksums
26ff42766ddf713a5ae68a0614de8d1a43e0cd78a2a3bd5102bec7de13c45d3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for survey-kit 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page