Este repositorio incluye el proyecto del equipo 4 del Módulo 1 de la promo D del bootcamp de Data Analytics de Adalab.
Se ha creado una carpeta de trabajo y otra con los datos de partida, mientras que los documentos finales se encuentran en la raiz del repositorio y son los siguientes:
- automatizacion-txt.ipynb: notebook con la clase y los métodos de apretura de archivos .xml, limpieza de los mismos e inserción de los datos en la base de datos de sql.
- automatizacion-xml.ipynb: notebook con la clase y los métodos de apretura de archivos .xml, limpieza de los mismos e inserción de los datos en la base de datos de sql.
- creacion-proyecto-1.sql: script de sql para la creación de la base de datos, las tablas y las modificaciones requeridas posteriormente.
- diagrama.png: contiene el diagrama de la base de datos de del proyecto.
A continuación detallamos el proceso que seguimos para crear las BBDD.
- Creamos esquema y tablas
-Correjimos y limpiamos los datos
- utilizamos el find/replace para evitar los peligros de usar ALTER TABLE
sin sacar el seguro
- Importamos los datos SQL a la tabla
- Importamos los datos _xml (lista)a python y lo convertimos en la lista de diccionarios (Ana nos proporcionó un video explicativo)
- Eliminamos elementos redundantes de cada diccionario (level_0)
- Creamos un bucle for para cambiar los códigos de la key gender, que necesitaban actualizarse con nuevos valores más acordes a la actualidad
- Bucle for con condicionales según la columna género
- Creamos los datos de la columna index_sql usando el método enumerate()
- Convertimos los anteriores datos en string de números a integer
- Lo convertimos de lista de diccionarios a lista de tuplas
- Copiamos el archivo para evitar dañar los datos originales
- Creamos sublistas y hacemos print para seguir el funcionamiento del código - con tres elementos podemos seguir mejor
- Lista de datos limpios -> bucle for para aplicante
- Usamos el método replace las veces necesarias
- Creamos los datos de la columna index_sql usando el método enumerate()
- Convertimos los anteriores datos en string de números a integer
- Eliminamos la lista del index 0 ya que eran los encabezados de cada columna y no era relevante
- Después de comprobar el correcto funcionamiento de las funciones/sistemas de limpieza o tratamiento de datos las ordenamos en clases diferenciando entre tipo de archivo txt/xml, en dos notebooks diferentes.
- Creamos los métodos de inserción de datos en las tablas SQL
- Insertamos los datos en las tablas SQL.