|
|
|
@ -1,18 +1,60 @@
|
|
|
|
|
import numpy as np
|
|
|
|
|
import pandas as pd
|
|
|
|
|
|
|
|
|
|
df = pd.read_csv("../../data/dvgm.csv")
|
|
|
|
|
print("Visualización de la base de datos")
|
|
|
|
|
print(df)
|
|
|
|
|
|
|
|
|
|
atributos = df.columns.values
|
|
|
|
|
print("\nVisualización de los atributos")
|
|
|
|
|
print(atributos)
|
|
|
|
|
class BaseDeDatos:
|
|
|
|
|
"""Clase que manipula los datos trabajados."""
|
|
|
|
|
|
|
|
|
|
print("\nVisualización de los tipos de datos")
|
|
|
|
|
print(df.info())
|
|
|
|
|
def __init__(self):
|
|
|
|
|
"""Función que inicializa la clase.
|
|
|
|
|
Se establecen los métodos que se deben ejecutar al inicializar la clase.
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
self.leer_datos()
|
|
|
|
|
self.definir_variables()
|
|
|
|
|
self.preprocesar_datos()
|
|
|
|
|
self.visualizar_basicos()
|
|
|
|
|
self.imprimir_atributos_agrupados()
|
|
|
|
|
|
|
|
|
|
def leer_datos(self):
|
|
|
|
|
"""Método que lee los datos."""
|
|
|
|
|
|
|
|
|
|
data_path = "../../data/dvgm.csv"
|
|
|
|
|
self.df = pd.read_csv(data_path)
|
|
|
|
|
|
|
|
|
|
def definir_variables(self):
|
|
|
|
|
"""Método que define variables necesarias respecto a los datos."""
|
|
|
|
|
|
|
|
|
|
self.atributos = self.df.columns.values
|
|
|
|
|
|
|
|
|
|
def preprocesar_datos(self):
|
|
|
|
|
"""Método que preprocesa los datos que lo requieren."""
|
|
|
|
|
self.df.loc[:, "fecha_completa"] = self.df.loc[:, "fecha"] + \
|
|
|
|
|
" " + self.df.loc[:, "hora_recepcion"]
|
|
|
|
|
|
|
|
|
|
self.df.loc[:, "fecha_completa"] = pd.to_datetime(
|
|
|
|
|
self.df.loc[:, "fecha_completa"], format="%d/%m/%y %H:%M:%S")
|
|
|
|
|
|
|
|
|
|
def visualizar_basicos(self):
|
|
|
|
|
"""Método que imprime una visualización básica de los datos."""
|
|
|
|
|
|
|
|
|
|
print("Visualización de la base de datos")
|
|
|
|
|
print(self.df)
|
|
|
|
|
|
|
|
|
|
print("\nVisualización de los atributos")
|
|
|
|
|
print(self.atributos)
|
|
|
|
|
|
|
|
|
|
print("\nVisualización de los tipos de datos")
|
|
|
|
|
print(self.df.info())
|
|
|
|
|
|
|
|
|
|
def imprimir_atributos_agrupados(self):
|
|
|
|
|
"""Método que imprime los valores de cada atributo y su respectivo conteo."""
|
|
|
|
|
|
|
|
|
|
for atributo in self.atributos:
|
|
|
|
|
recopilado = self.df.groupby(atributo).count().iloc[:, 0].copy()
|
|
|
|
|
print("\n\nAtributo agrupado: {}\n".format(atributo))
|
|
|
|
|
print(recopilado)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for atributo in atributos:
|
|
|
|
|
recopilado = df.groupby(atributo).count().iloc[:, 0].copy()
|
|
|
|
|
print(recopilado)
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
bd = BaseDeDatos()
|
|
|
|
|