Skip to main content

A modern Python library for data quality assessment, validation, and automated data cleaning.

Project description

🛠️ EasyDataFix

PyPI version Python Versions License Downloads GitHub Release GitHub Stars

A modern Python library for data quality assessment, validation, and automated data cleaning.

EasyDataFix helps data analysts, data scientists, machine learning engineers, and ETL developers quickly identify data quality issues and generate professional reports with just a few lines of code.


✨ Features

  • 📊 Data Quality Assessment
  • ✅ Missing Value Detection
  • 🔍 Duplicate Detection
  • ✔️ Data Validation
  • 🧹 Data Consistency Checks
  • 🎯 Data Accuracy Checks
  • ⏱️ Timeliness Checks
  • 💡 Intelligent Recommendations
  • 📄 Console Report
  • 🌐 HTML Report
  • 📑 PDF Report
  • 📈 Excel Report
  • 📋 CSV Report
  • 📦 JSON Report
  • 📝 Markdown Report

Installation

pip install easydatafix

For Parquet support:

pip install easydatafix[parquet]

Quick Start

import easydatafix as edf

report = edf.assess("employees.csv")

report.summary()

report.to_html()

report.to_pdf()

report.to_excel()

report.to_json()

report.to_csv()

report.to_markdown()

Example Console Output

======================================================================
                       🛠️ EASY DATA FIX REPORT
======================================================================

Overall Score : 90.37

Grade         : A

Completeness  : 96.97%

Uniqueness    : 100.00%

Validity      : 55.00%

Consistency   : 100.00%

Accuracy      : 100.00%

Timeliness    : 100.00%

Supported Quality Dimensions

Dimension Status
Completeness
Uniqueness
Validity
Consistency
Accuracy
Timeliness

Report Formats

EasyDataFix can generate reports in multiple formats.

report.summary()

report.to_html()

report.to_pdf()

report.to_excel()

report.to_json()

report.to_csv()

report.to_markdown()

Supported Data Sources

EasyDataFix accepts datasets in a variety of formats. edf.assess(...) and edf.fix(...) both work with:

  • Pandas DataFrame
  • CSV files
  • Excel files (.xlsx / .xls)
  • JSON files
  • Parquet files

Loading is handled by the modular easydatafix.datasources package, which lets you plug in your own formats:

import pandas as pd

from easydatafix.datasources import (
    DataSource,
    DatasetLoader,
    default_registry,
)


class TSVDataSource(DataSource):

    name = "tsv"

    def can_load(self, source) -> bool:
        from pathlib import Path
        return isinstance(source, Path) and source.suffix.lower() == ".tsv"

    def load(self, source) -> pd.DataFrame:
        return pd.read_csv(source, sep="\t")


default_registry.register(TSVDataSource())

# Now edf.assess(...) and edf.fix(...) accept .tsv files too.

Why EasyDataFix?

EasyDataFix is designed to make data quality assessment simple and accessible.

Whether you're validating datasets before machine learning, preparing ETL pipelines, or cleaning business reports, EasyDataFix provides a consistent way to measure and improve data quality.


Roadmap

Version 0.1

  • Assessment Engine
  • Validation Engine
  • Recommendation Engine
  • Reporting Engine
  • Auto Fix Foundation

Version 0.2

  • Data Profiling
  • CLI Support
  • Streamlit Dashboard
  • SQL Support
  • Apache Spark Support
  • Interactive Charts
  • AI Recommendations

Contributing

Contributions are welcome.

Feel free to fork the repository, open issues, or submit pull requests.

Repository:

https://github.com/suneelprojects/easydatafix


License

MIT License


Made with ❤️ by Suneel Kumar Kola

Project details


Download files

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

Source Distribution

easydatafix-0.2.0.tar.gz (38.3 kB view details)

Uploaded Source

Built Distribution

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

easydatafix-0.2.0-py3-none-any.whl (64.9 kB view details)

Uploaded Python 3

File details

Details for the file easydatafix-0.2.0.tar.gz.

File metadata

  • Download URL: easydatafix-0.2.0.tar.gz
  • Upload date:
  • Size: 38.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for easydatafix-0.2.0.tar.gz
Algorithm Hash digest
SHA256 f38206f3c1fb59ebf04ea5da86817c24955a219df0a70f410ba5ae606d9a530d
MD5 89d80880ff4b76aabe949c77b306638e
BLAKE2b-256 978624ec42389b25f50deb9ece04c5032858afef4b374acac370fa164c6eb432

See more details on using hashes here.

File details

Details for the file easydatafix-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: easydatafix-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 64.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for easydatafix-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 422199832d24024331a97114f64b9a102d52239bddcd33b37cb715b23441a253
MD5 57b281f339149aab1da9f453270daaa5
BLAKE2b-256 7baf01638defa69daeaf5a97c40d5d77a561a5dc7d0927d89db1f19ec1cd5217

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 Pingdom Monitoring Sentry Error logging StatusPage Status page