Metadata-Version: 2.4
Name: recx
Version: 0.0.0rc1
Summary: Lightweight reconciliation tests for dataframes
Author: Adrian Letchford
Author-email: Adrian Letchford <me@dradrian.com>
License-Expression: MIT
Requires-Dist: pandas>=2.3.2
Requires-Python: >=3.10
Project-URL: Homepage, https://github.com/robolyst/recx
Project-URL: Issues, https://github.com/robolyst/recx/issues
Project-URL: Source, https://github.com/robolyst/recx
Description-Content-Type: text/markdown

# recx

DataFrame reconciliation utilities for Python / pandas.

`recx` helps you compare a *candidate* `pandas.DataFrame` against a *baseline* using
declarative, column-level checks (exact equality, absolute tolerance, relative
tolerance, or custom logic). It produces structured results you can assert on in
tests or render as a concise textual summary.

> Status: Early, experimental. API may change.


## Installation

```bash
pip install recx
```

## Features

* Index presence checks (missing + extra index values) out of the box
* Built-in column checks:
	* `EqualCheck` -- exact equality (treats aligned NaNs as equal)
	* `AbsTolCheck` -- absolute error within tolerance (optional sort of failures)
	* `RelTolCheck` -- relative error within tolerance (optional sort of failures)
* Rich per-check results (`CheckResult`) and aggregate (`RecResult`).
* Easy to extend: implement a single `check` method on a `ColumnCheck` subclass

---

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

