Skip to main content

✨ QualityClean

Fast, automated data cleaning for Polars DataFrames.

Clean messy datasets with a single function call while generating detailed audit reports.

Python Polars License


Why QualityClean?

Cleaning datasets is one of the most repetitive steps in every data science and machine learning workflow.

QualityClean automates common preprocessing tasks so you can focus on analysis instead of writing the same cleaning code over and over.

With a single function call, QualityClean can:

  • Normalize column names
  • Trim unnecessary whitespace
  • Replace placeholder values with nulls
  • Handle missing values
  • Remove duplicate rows
  • Infer and convert datatypes
  • Generate detailed cleaning reports

Installation

pip install qualityclean

or

uv add qualityclean

Quick Start

import qualityclean as qc

df = qc.load("employees.csv")

result = qc.clean(df)

clean_df = result.data

qc.audit(result)

qc.export(result, "cleaned.parquet")

Example

Before

Name Age City
" Alice " 23 Delhi
"Bob" NULL Mumbai
"Alice" 23 Delhi

After

name age city
Alice 23 Delhi
Bob 23 Mumbai

✔ Column names normalized

✔ Whitespace removed

✔ Missing values handled

✔ Duplicate rows removed


Features

  • Fast Polars-based processing
  • Automatic cleaning pipeline
  • Human-readable audit reports
  • CSV and Parquet support
  • Detailed execution statistics
  • Rule-level timing information
  • Pythonic API
  • Lightweight with minimal dependencies

Example Audit Report

QualityClean Report

Rows processed      : 50,000
Duplicates removed  : 1,243
Missing values fixed: 892
Whitespace trimmed  : 3,144
Execution time      : 0.18 s

API

qc.load(...)
qc.clean(...)
qc.audit(...)
qc.export(...)

Complete API documentation is available in the /docs directory.


Project Structure

qualityclean/
│
├── src/
├── tests/
├── docs/
├── README.md
└── pyproject.toml

Roadmap

  • Core cleaning engine
  • Built-in cleaning rules
  • Audit reporting
  • CSV & Parquet support
  • Comprehensive test suite
  • Custom rule plugins
  • Performance benchmarks
  • Documentation website
  • PyPI release

Contributing

Contributions, bug reports, and feature requests are welcome.

Please open an issue or submit a pull request.


License

Released under the MIT License.


Built with ❤️ using Polars

Metadata

Release files for qualityclean 0.1.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 qualityclean 0.1.2
File Size Uploaded
qualityclean-0.1.2.tar.gz 10.3 kB Details

Built distribution (wheel)

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

Total release size: 28.6 kB

Release files / qualityclean-0.1.2.tar.gz

Download URL qualityclean-0.1.2.tar.gz
Size 10.3 kB
Tags Source
SHA-256 checksum
How to use checksums
763b296d56abc1ebee3fb803d001631e283bf5922c21918cb428c8e404711212
BLAKE2b-256 checksum
How to use checksums
643c29fda0642407a698c7d193ae60def5b13522f7cd5a4ee53c3577ec0d05f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / qualityclean-0.1.2-py3-none-any.whl

Download URL qualityclean-0.1.2-py3-none-any.whl
Size 18.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fe6e42eb3f44e38940312eabbe51284c586aa7e4a983f605c42b357bd525cd4c
BLAKE2b-256 checksum
How to use checksums
84d9c2ed99a76989122fcbd732a318e30cf3bdac7cf92ec84f74dcdd7bb43187
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

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