QuickClean
One-line intelligent data cleaning for pandas DataFrames.
import quickclean as qc
df_clean = qc.clean(df)
Lighter than pyjanitor. Smarter than pandas manual.
Why QuickClean?
| QuickClean | pandas manual | |
|---|---|---|
| Lines of code | 2 | 30 |
| Time (100K rows) | 0.26s | 0.14s |
| Missing % left | 0.0% | 0.0% |
| Outliers handled | yes | manual |
| Auto dtype fix | yes | manual |
Installation
pip install quickclean
# With ML-powered imputation
pip install quickclean[smart]
# Everything
pip install quickclean[full]
Usage
import quickclean as qc
# One line
df_clean = qc.clean(df)
# With options
df_clean = qc.clean(
df,
strategy="smart", # 'fast' | 'smart' | 'aggressive'
aggressiveness=0.5, # 0.0–1.0
verbose=True, # print cleaning report
preview=False, # return analysis dict only
)
What gets cleaned automatically
- Missing values — smart imputation (median/mode/KNN/iterative)
- Outliers — adaptive detection + cap/remove/impute
- Duplicates — global + subset aware
- Data types — inference & auto-correction
- Formatting — snake_case columns, string normalization, date parsing, numeric string conversion
- Categories — fuzzy harmonization ("Jakarta" = "JAKARTA")
Performance
| Rows | Time | Throughput |
|---|---|---|
| 10K | 0.04s | 273K rows/s |
| 100K | 0.24s | 412K rows/s |
| 1M | 2.40s | 416K rows/s |
Requirements
- Python >= 3.10
- pandas >= 1.5.0
- numpy >= 1.21.0
Optional: scikit-learn (smart imputation),
rapidfuzz (fuzzy matching), dateparser (date parsing)
Release files for quickclean 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| quickclean-0.1.0.tar.gz | 8.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| quickclean-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.2 kB
Release files / quickclean-0.1.0.tar.gz
| Download URL | quickclean-0.1.0.tar.gz |
|---|---|
| Size | 8.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5d131aefc92d1ba36d6ccde84a0ec2649e35bc8b8305093555631f516206a311
|
|
BLAKE2b-256 checksum How to use checksums |
9df04ae00871c586a0e4ffa11627f9d3ba4d15500ac49a5e9e00deea9d67a029
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.
Transparency logRelease files / quickclean-0.1.0-py3-none-any.whl
| Download URL | quickclean-0.1.0-py3-none-any.whl |
|---|---|
| Size | 11.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
638093ea10d3c022d7af6ab434252685636d7c4534e48af249a0177b1e2e5da2
|
|
BLAKE2b-256 checksum How to use checksums |
c246948bdfcb8a9dd4c7e2f0767abd8870a04623f475a6e79b3ab3ae6e755542
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.
Transparency log