Skip to main content

A package for EDA on CSV and SQL data.

Project description

EDA BF - Exploratory Data Analysis Package

Este paquete permite realizar un análisis exploratorio de datos (EDA) sobre archivos (CSV, Parquet) y tablas de bases de datos SQL (MySQL, PostgreSQL, SQL Server, Oracle), generando informes en formato Excel para facilitar el análisis de calidad y características de los datos.

Funcionalidades Principales

1. process_single_file

Procesa un archivo individual (CSV o Parquet) y genera un informe EDA en formato Excel.

  • Función: process_single_file(file_path, output=None, limite=None)
  • Parámetros:
    • file_path (str): Ruta del archivo a procesar.
    • output (str): Ruta de salida para el archivo Excel (opcional).
    • limite (int): Límite opcional de filas a leer.
  • Descripción: Lee el archivo especificado, genera un análisis exploratorio de datos y lo guarda en un archivo Excel que contiene métricas y estadísticas de los datos.

2. process_folder

Procesa múltiples archivos en una carpeta (CSV y Parquet) y genera un informe EDA consolidado en un archivo Excel.

  • Función: process_folder(folder_path, output=None, limite=None)
  • Parámetros:
    • folder_path (str): Ruta de la carpeta que contiene los archivos a procesar.
    • output (str): Ruta de salida para el archivo Excel consolidado.
    • limite (int): Límite opcional de filas a leer por archivo.
  • Descripción: Busca archivos CSV y Parquet en la carpeta especificada, procesa cada archivo, y genera un informe combinado en Excel con métricas detalladas de cada archivo.

3. process_single_table

Procesa una única tabla de una base de datos SQL y genera un informe EDA en formato Excel.

  • Función: process_single_table(db_type, server, user, password, database, schema, table_name, path_instaclient=None, output=None)
  • Parámetros:
    • db_type (str): Tipo de base de datos (mysql, postgresql, sqlserver, oracle).
    • server, user, password, database, schema, table_name (str): Información de conexión y tabla a procesar.
    • path_instaclient (str): Ruta opcional del cliente de Oracle, si es necesario.
    • output (str): Ruta de salida para el archivo Excel.
  • Descripción: Se conecta a la base de datos, extrae la tabla especificada y genera un informe detallado en Excel, incluyendo estadísticas y datos de calidad de la tabla.

4. process_dataset

Procesa múltiples tablas de un esquema en una base de datos SQL y genera un informe EDA para cada tabla en un único archivo Excel.

  • Función: process_dataset(db_type, server, user, password, database, schema, path_instaclient=None, output=None, limit_tables=5)
  • Parámetros:
    • db_type (str): Tipo de base de datos (mysql, postgresql, sqlserver, oracle).
    • server, user, password, database, schema (str): Información de conexión a la base de datos.
    • path_instaclient (str): Ruta opcional del cliente de Oracle, si es necesario.
    • output (str): Ruta de salida para el archivo Excel.
    • limit_tables (int): Límite opcional para el número de tablas a procesar.
  • Descripción: Conecta a la base de datos, extrae todas las tablas del esquema especificado, y genera un informe EDA en un solo archivo Excel. Cada tabla se incluye en una hoja diferente, con métricas y análisis de calidad.

5. process_dataframe

Procesa un DataFrame directamente en memoria y genera un informe EDA en formato Excel.

  • Función: process_dataframe(df, output=None, table_name="DataFrame", limite=None)
  • Parámetros:
    • df (DataFrame): El DataFrame que se desea procesar.
    • output (str): Ruta de salida para el archivo Excel.
    • table_name (str): Nombre que se asignará al DataFrame en el informe Excel (por defecto: "DataFrame").
    • limite (int): Límite opcional de filas a procesar.
  • Descripción: Procesa un DataFrame cargado en memoria, generando un informe en Excel con estadísticas descriptivas y métricas clave. Si se especifica un límite, solo se procesan las primeras limite filas.

Ejemplos de Uso

Procesar un Archivo Individual

from edabf import process_single_file
process_single_file("ruta/al/archivo.csv", output="salida", limite=1000)

Procesar una Carpeta de Archivos

from edabf import process_folder
process_folder("ruta/a/carpeta", output="salida_masivo")

Procesar una Tabla de una Base de Datos

from edabf import process_single_table
process_single_table("postgresql", "servidor", "usuario", "contraseña", "base_datos", "esquema", "nombre_tabla", output="salida_table")

Procesar Múltiples Tablas de un Esquema de Base de Datos

from edabf import process_dataset
process_dataset("mysql", "servidor", "usuario", "contraseña", "base_datos", "esquema", output="salida_dataset")

Procesar Múltiples Tablas de un Esquema de Base de Datos

from edabf import process_dataframe
import pandas as pd

# Crear un DataFrame de ejemplo
data = {"Columna1": [1, 2, 3], "Columna2": ["A", "B", "C"]}
df = pd.DataFrame(data)

# Generar el informe EDA
process_dataframe(df, output="reporte_dataframe", table_name="Ejemplo", limite=10)

Licencia

Este proyecto está bajo la licencia 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

edabf-0.34.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

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

edabf-0.34-py3-none-any.whl (34.5 kB view details)

Uploaded Python 3

File details

Details for the file edabf-0.34.tar.gz.

File metadata

  • Download URL: edabf-0.34.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.13

File hashes

Hashes for edabf-0.34.tar.gz
Algorithm Hash digest
SHA256 356cf1e6f3399818e46e37ec193020782c68bd7bb2b58bcb6e3c6d8817694af2
MD5 c0ac21c1fdc402901f22557aa87475dd
BLAKE2b-256 5b526eea31ce76a0d0f1e23f40a7dc542c9f78b853549531a6c241267412d585

See more details on using hashes here.

File details

Details for the file edabf-0.34-py3-none-any.whl.

File metadata

  • Download URL: edabf-0.34-py3-none-any.whl
  • Upload date:
  • Size: 34.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.13

File hashes

Hashes for edabf-0.34-py3-none-any.whl
Algorithm Hash digest
SHA256 f7afb007a133fcd74849bb7008019ce580eece6d9f0646b9a030478bf01029f0
MD5 4a043694dd1cd58c2198007a5e29d381
BLAKE2b-256 b8f58be1a9cf4309eb71214bfb7d695cd4e15f131c0901084203df94a212d50d

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