Se ha cambiado la base de datos a Postgres SQL, además se han realizado algunos cambios de lógica.
59 lines
1.3 KiB
Markdown
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.*
|