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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qualityclean-0.1.2.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qualityclean-0.1.2-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file qualityclean-0.1.2.tar.gz.

File metadata

  • Download URL: qualityclean-0.1.2.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for qualityclean-0.1.2.tar.gz
Algorithm Hash digest
SHA256 763b296d56abc1ebee3fb803d001631e283bf5922c21918cb428c8e404711212
MD5 96c226133332864650b507f33f0e03a4
BLAKE2b-256 643c29fda0642407a698c7d193ae60def5b13522f7cd5a4ee53c3577ec0d05f5

See more details on using hashes here.

File details

Details for the file qualityclean-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: qualityclean-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using 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}

File hashes

Hashes for qualityclean-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fe6e42eb3f44e38940312eabbe51284c586aa7e4a983f605c42b357bd525cd4c
MD5 a2fcff4504b86b3a13e436a208169edb
BLAKE2b-256 84d9c2ed99a76989122fcbd732a318e30cf3bdac7cf92ec84f74dcdd7bb43187

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page