Code-Sprint/Obtener-Datos-1/README.md
diqueran a24ba9b4d1 Actualización de Fase 1
Se ha cambiado la base de datos a Postgres SQL, además se han realizado algunos cambios de lógica.
2025-10-28 15:41:24 +01:00

59 lines
1.3 KiB
Markdown

# Fase 1 — Ingesta Automática de Datos (Adicciones ↔ Violencia)
Esta fase inicial prepara la base de datos PostgreSQL para el análisis posterior.
El script **detecta automáticamente delimitadores, codificaciones y nombres de columnas**,
creando tablas limpias e importando los datasets CSV del directorio `datasets/`.
---
## Ejecución
1. Levanta el contenedor de PostgreSQL:
```bash
docker compose up -d
```
2. Ejecuta el importador de datos:
```bash
python3 importador.py
```
---
## Descripción Técnica
- Detecta **codificación** (`UTF-8`, `Latin1`, `Windows-1252`, etc.) con `chardet`.
- Identifica el **delimitador CSV** (`;`, `,`, `|`, `\t`).
- Limpia nombres de columnas y crea las tablas en **PostgreSQL 15**.
- Inserta automáticamente los registros de cada dataset.
- Genera el archivo de metadatos `columnas_info.json` con las columnas detectadas.
---
## Requisitos
Archivo `requirements.txt`:
```txt
pandas
psycopg2-binary
chardet
```
Instalación rápida:
```bash
pip install -r requirements.txt
```
---
## Salida
- Tablas generadas en la base de datos `adicciones` (puerto 5433).
- Archivo `columnas_info.json` con las estructuras detectadas.
*Esta fase deja lista la base de datos para las siguientes fases de procesamiento y análisis estadístico.*