Compare commits
5 Commits
da332e14c1
...
3451a55365
Author | SHA1 | Date |
---|---|---|
Gregorio Reyes | 3451a55365 | |
Gregorio Reyes | c4f7fe87d7 | |
Gregorio Reyes | 0f41fc1be2 | |
Gregorio Reyes | 104f519a1c | |
Gregorio Reyes | 4c10a4ab6b |
|
@ -1 +1,2 @@
|
|||
*~
|
||||
*~
|
||||
*__pycache__*
|
|
@ -1,5 +1,6 @@
|
|||
import numpy as np
|
||||
import pandas as pd
|
||||
import utilerias as ut
|
||||
|
||||
|
||||
class BaseDeDatos:
|
||||
|
@ -19,7 +20,8 @@ class BaseDeDatos:
|
|||
def leer_datos(self):
|
||||
"""Método que lee los datos."""
|
||||
|
||||
data_path = "../../data/dvgm.csv"
|
||||
data_file = "data/dvgm.csv"
|
||||
data_path = ut.abs_path(data_file)
|
||||
self.df = pd.read_csv(data_path)
|
||||
|
||||
def definir_variables(self):
|
|
@ -0,0 +1,43 @@
|
|||
import numpy as np
|
||||
import pandas as pd
|
||||
|
||||
|
||||
def formatea_fecha(data):
|
||||
data.loc[:, "fecha_completa"] = data.loc[:, "fecha"] + \
|
||||
" " + data.loc[:, "hora_recepcion"]
|
||||
|
||||
data.loc[:, "fecha_completa"] = pd.to_datetime(
|
||||
data.loc[:, "fecha_completa"], format="%d/%m/%y %H:%M:%S")
|
||||
|
||||
|
||||
def limpia_descripcion_cierre(data):
|
||||
renombre_de_valores = {"Cierre De Fuga": "Otros",
|
||||
"Fuera De Entidad Federativa": "Otros",
|
||||
"Fuera De Subzona": "Otros",
|
||||
"Remitido Al M.p.": "Hecho real",
|
||||
"Resolucion 1": "Hecho real",
|
||||
"Resolucion 5": "Hecho real"}
|
||||
data.loc[:, "descripcion_cierre"] = data.loc[:,
|
||||
"descripcion_cierre"].replace(renombre_de_valores)
|
||||
|
||||
|
||||
def limpia_via_recepcion(data):
|
||||
renombre_de_valores = {"060 Monterrey": "Otros",
|
||||
"80": "Otros",
|
||||
"89": "Otros",
|
||||
"App": "Otros",
|
||||
"App 9-1-1": "Otros",
|
||||
"Cic": "Otros",
|
||||
"Rutina": "Gobierno",
|
||||
"Sala crisis": "Gobierno",
|
||||
"Telefonia movil": "Telefono",
|
||||
"Videovigilancia": "Gobierno",
|
||||
"Whats App": "Otros"}
|
||||
data.loc[:, "via_recepcion"] = data.loc[:,
|
||||
"via_recepcion"].replace(renombre_de_valores)
|
||||
|
||||
|
||||
def run(data):
|
||||
formatea_fecha(data)
|
||||
limpia_descripcion_cierre(data)
|
||||
limpia_via_recepcion(data)
|
|
@ -0,0 +1,34 @@
|
|||
import numpy as np
|
||||
import pandas as pd
|
||||
import preprocesar_datos as p_datos
|
||||
import utilerias as ut
|
||||
|
||||
|
||||
class SerieDeTiempo:
|
||||
"""Esta clase gestiona la serie de tiempo."""
|
||||
|
||||
def __init__(self):
|
||||
self.carga_datos()
|
||||
self.definir_variables()
|
||||
self.preprocesar_datos()
|
||||
|
||||
def carga_datos(self):
|
||||
"""Carga los datos de los reportes al 911."""
|
||||
|
||||
nombre_de_archivo = "data/dvgm.csv"
|
||||
data_path = ut.abs_path(nombre_de_archivo)
|
||||
self.data = pd.read_csv(data_path)
|
||||
|
||||
def definir_variables(self):
|
||||
"""Método que define variables necesarias respecto a los datos."""
|
||||
|
||||
self.atributos = self.data.columns.values
|
||||
|
||||
def preprocesar_datos(self):
|
||||
"""Método que preprocesa los datos que lo requieren."""
|
||||
p_datos.run(self.data)
|
||||
print(self.data.groupby("via_recepcion").count())
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
st = SerieDeTiempo()
|
|
@ -0,0 +1,12 @@
|
|||
import os
|
||||
|
||||
|
||||
def abs_path(filename):
|
||||
"""Obtiene el camino absoluto a un archivo."""
|
||||
file_path = os.path.abspath(
|
||||
os.path.join(
|
||||
os.path.join(os.path.dirname(__file__), ".."),
|
||||
filename,
|
||||
)
|
||||
)
|
||||
return file_path
|
Loading…
Reference in New Issue