Skip to main content


Lightweight reconciliation tests for DataFrames

CI Build PyPI version PyPI license Project Status: Active

Use Rec to compare two DataFrames (baseline vs candidate) with per-column checks (equality, absolute / relative tolerance, regex-driven selection) and clear summaries of failures.

Features

  • Declarative column mapping
  • Built-in checks: equality, absolute tolerance, relative tolerance
  • Index integrity checks (missing / extra index values)
  • Regex column selection (regex=True on checks)
  • Compact textual summary
  • Extensible: implement custom checks by subclassing ColumnCheck

Install

With pip:

pip install recx

with uv:

uv add recx

Quick Example

import pandas as pd
from recx import Rec, EqualCheck, AbsTolCheck

baseline = pd.DataFrame({
    "price": [100.00, 200.00, 300.00],
    "status": ["active", "inactive", "active"]
})

candidate = pd.DataFrame({
    "price": [100.00, 200.00, 301.00],
    "status": ["active", "inactive", "active"]
})

rec = Rec(columns={
    "price": AbsTolCheck(tol=0.01),
    "status": EqualCheck(),
})

result = rec.run(baseline, candidate)
result.summary()

Feel free to open issues or PRs with suggestions or improvements.

Metadata

Release files for recx 0.0.8

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

Source distribution (sdist)

Source distribution for recx 0.0.8
File Size Uploaded
recx-0.0.8.tar.gz 8.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for recx 0.0.8
File Interpreter ABI Platform
recx-0.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 18.3 kB

Release files / recx-0.0.8.tar.gz

Download URL recx-0.0.8.tar.gz
Size 8.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d44c0fc5d8edc017172cc822d62e150404b8dac1d7ca28858a605d6df7fadd29
BLAKE2b-256 checksum
How to use checksums
8c6c5515ffeb0c7430a8f95a3919f07237c7052f16b030a660ea638d41309133
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.3

Release files / recx-0.0.8-py3-none-any.whl

Download URL recx-0.0.8-py3-none-any.whl
Size 9.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f8a492c3ae776922a4ba8363e7fa9b4ca4a842dea49b41328fd05748be9629f
BLAKE2b-256 checksum
How to use checksums
657c5a5be0dc9d5f2e3fec49674d57e1902cc196572b3040a1d9c6dedcd2ba1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.3

Release history Release notifications | RSS feed

This release

0.0.8 This release

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.2

2 release files

0.0.1

2 release files

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