dq-prof 0.1.8
Fast, zero-config data sanity checks for pipelines.
Run one command and instantly see if your data is broken. Like Ruff, but for datasets.
Quick example
dq-prof data.parquet
DATA HEALTH: WARN
CRITICAL
- created_at: stale timestamps (last value 2025-03-01)
WARNING
- revenue: nulls 12% (expected <5%)
- region: skew (US = 78%)
Titanic (real public data):
./examples/download_titanic.sh
dq-prof examples/titanic.csv --fail-on warning
DATA HEALTH: FAIL
Rows: 891 sampled of 891 (mode=Head)
CRITICAL
- age: high null ratio 19.87% (obs=0.1987, exp=< 0.05)
- deck: high null ratio 77.22% (obs=0.7722, exp=< 0.05)
WARNING
- sibsp: outlier ratio 3.37% (obs=0.0337, exp=< 0.03)
- survived: distinct ratio very low (obs=0.0022, exp=> 0.01)
- pclass: distinct ratio very low (obs=0.0034, exp=> 0.01)
- sex: distinct ratio very low (obs=0.0022, exp=> 0.01)
- sibsp: distinct ratio very low (obs=0.0079, exp=> 0.01)
Baseline vs drift example:
dq-prof examples/clean_sales.csv --full-scan --save-baseline baseline_clean.json
dq-prof examples/drift_sales.csv --baseline baseline_clean.json --fail-on warning --color never
DATA HEALTH: WARN
CRITICAL
- region: top value dominates 100.0% of rows (obs=1.0000, exp=< 0.75)
WARNING
- region: top value share increased by 40.0pp vs baseline (obs=1.0000, exp=0.6000)
Why dq-prof
- Zero config – no YAML, no expectations to write
- Fast – runs in seconds on sampled data
- Catches real issues – null spikes, skew, outliers, freshness, schema drift
- Baseline-aware – detect changes vs previous runs
- CI-friendly – fail pipelines when data looks wrong
Install
Download a release binary and run:
chmod +x dq-prof
./dq-prof data.parquet
Or pip:
pip install dq-prof
dq-prof --help
Examples
Inspect a file:
dq-prof examples/clean_sales.csv
Compare to baseline (full scan required to save):
dq-prof data.csv --full-scan --save-baseline baseline.json
dq-prof data.csv --baseline baseline.json --fail-on warning
Postgres:
dq-prof public.sales \
--pg-url postgres://user:pass@host/db \
--sample-rows 50000
JSON output:
dq-prof data.parquet --format json
Output
Text or JSON with severity:
- CRITICAL – likely broken data
- WARNING – suspicious change
Philosophy
dq-prof is not a data observability platform. It’s a fast sanity check you run inline — a linter for data — before or after a pipeline step to catch issues immediately.
Metadata
Release files for dq-prof 0.1.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dq_prof-0.1.20-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64 | Details |
| dq_prof-0.1.20-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
Total release size: 40.1 MB
Release files / dq_prof-0.1.20-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | dq_prof-0.1.20-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 20.6 MB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
ec4d885fc045a9667dcc90b7c71eba4afaa1cc697bffeb515ce7b47471e047e3
|
|
BLAKE2b-256 checksum How to use checksums |
6ac315229b17844e68edb336cdd650332049fac37ad46f84a8a5b37f515ad621
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 20, 2026.
Transparency logRelease files / dq_prof-0.1.20-py3-none-macosx_11_0_arm64.whl
| Download URL | dq_prof-0.1.20-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 19.6 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
54843962cc78f47623187029d6ab1079406cdffc381563a72b99633cc697cfec
|
|
BLAKE2b-256 checksum How to use checksums |
63af16c4f104ec70f7844b1386f013d14bcbb7690738ffe472cbb40e247f339b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 20, 2026.
Transparency log