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.1.tar.gz (10.0 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.1-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qualityclean-0.1.1.tar.gz
  • Upload date:
  • Size: 10.0 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.1.tar.gz
Algorithm Hash digest
SHA256 8eb226ff052dba61fa11e4f198dedbf7c410b253da461d0db608fa1f75797544
MD5 027781042206b33dfa6d99b89d66bad6
BLAKE2b-256 68110bf44e3c5f1ff8f9db982dbb55c63596542399e1fe5c2cf678fcf633da0a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qualityclean-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 18.1 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 31927e07a53c64f230ca80d3bb466dce329f3bbb34ceab89ecf6807262216352
MD5 c26cd1b3ed5316c92a1b3a4adec822a3
BLAKE2b-256 3fe1768920fe53fc74d5f2a36c31306cead0edc9fc917bdddf028358549511ed

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