Skip to main content

Un package didattico per il profiling automatico di dataset CSV, Excel e JSON

Project description

📊 DataProfiler

DataProfiler è un package Python didattico per il profiling automatico di dataset. Analizza file CSV, Excel e JSON generando report dettagliati con statistiche descrittive, rilevamento di anomalie e valori mancanti.

Installazione

pip install dataprofiler-edu

Per lo sviluppo:

git clone https://github.com/tuonome/dataprofiler.git
cd dataprofiler
pip install -e ".[dev]"

Uso rapido

from dataprofiler import Profiler

# Analizza un file CSV
profiler = Profiler("vendite.csv")
report = profiler.profile()

# Stampa riepilogo
print(report.summary())

# Esporta in Markdown
profiler.export(report, "report.md")

CLI

# Profiling rapido da terminale
dataprofiler dati.csv

# Esporta in formato specifico
dataprofiler dati.csv -o report.md -f md
dataprofiler vendite.xlsx -o report.json -f json
dataprofiler prodotti.json -o report.html -f html

Formati supportati

Input Output
CSV (.csv) Markdown (.md)
Excel (.xlsx, .xls) JSON (.json)
JSON (.json) HTML (.html)

Funzionalità

  • Rilevamento automatico del tipo di ogni colonna (numerico, testuale, data, booleano)
  • Statistiche numeriche: media, mediana, min, max, deviazione standard, quartili
  • Statistiche testuali: lunghezze, frequenze, valori più comuni
  • Statistiche temporali: range date, frequenza, formati rilevati
  • Analisi valori mancanti: conteggio, percentuale, completezza
  • Warnings automatici: colonne quasi vuote, valori costanti, possibili ID
  • Export multi-formato: Markdown, JSON, HTML

Concetti OOP dimostrati

Questo package è progettato come strumento didattico per un corso Python avanzato:

  • Classi astratte (ABC): BaseReader, BaseAnalyzer, BaseExporter
  • Ereditarietà: ogni reader/analyzer/exporter estende la propria base
  • Composizione: Profiler compone reader + analyzer + exporter
  • Polimorfismo: gli analyzer vengono selezionati dinamicamente
  • Factory Pattern: ReaderFactory e ExporterFactory
  • Strategy Pattern: exporter intercambiabili
  • Dataclass: modelli dati tipizzati con property calcolate

Licenza

MIT

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

dataprofiler_edu-0.1.0.tar.gz (28.5 kB view details)

Uploaded Source

Built Distribution

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

dataprofiler_edu-0.1.0-py3-none-any.whl (34.2 kB view details)

Uploaded Python 3

File details

Details for the file dataprofiler_edu-0.1.0.tar.gz.

File metadata

  • Download URL: dataprofiler_edu-0.1.0.tar.gz
  • Upload date:
  • Size: 28.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for dataprofiler_edu-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5dcf9d55beb879623b00b329eaae9d0c10eac104c00246fbfd940b3ba57f76d0
MD5 e091e5b719766ea1055a51b6706c1115
BLAKE2b-256 b677843deef1a5a6e8b62d4b0180eea5c83982799039aa86ec9e867a0375075d

See more details on using hashes here.

File details

Details for the file dataprofiler_edu-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for dataprofiler_edu-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bcecf533f62096e07af1995fffd15a4a570b3592904572dc4cf25642c8651647
MD5 cb8d366cd530af887ec0068656bc60cb
BLAKE2b-256 795a91280a1647927fefbd04e71def262da5d6339002dcfd2b40a701f27ca207

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