unir-metodologia/procesamiento_2010-2016.ipynb

5.5 KiB

from functools import cache
import pandas as pd

pd.set_option("display.max_columns", None)
@cache
def get_dataset_for(year):
    return pd.read_csv(f"datasets/sinac{year}DatosAbiertos.csv", dtype=object)
columns_selected = [
    "edo_captura",
    "edo_nac_madre",
    "fecha_nac_madre",
    "edad_madre",
    "estado_conyugal",
    "entidad_residencia_madre",
    "numero_embarazos",
    "hijos_nacidos_muertos",
    "hijos_nacidos_vivos",
    "hijos_sobrevivientes",
    "el_hijo_anterior_nacio",
    "vive_aun_hijo_anterior",
    "orden_nacimiento",
    "recibio_atencion_prenatal",
    "trimestre_recibio_primera_consulta",
    "total_consultas_recibidas",
    "madre_sobrevivio_al_parto",
    "escolaridad_madre",
    "ocupacion_habitual_madre",
    "trabaja_actualmente",
    "fecha_nacimiento_nac_vivo",
    "hora_nacimiento_nac_vivo",
    "sexo_nac_vivo",
    "semanas_gestacion_nac_vivo",
    "talla_nac_vivo",
    "peso_nac_vivo",
    "valoracion_apgar_nac_vivo",
    "valoracion_silverman_nac_vivo",
    "producto_de_un_embarazo",
    "codigo_anomalia",
    "anomalia_congenita_nac_vivo",
    "lugar_de_nacimiento",
    "entidad_certifico",
]
df = pd.concat([get_dataset_for(year)[columns_selected] for year in range(2010, 2017)])
def _ano_nacimiento_vivo_func(str_date):
    try:
        return str_date.split("/")[-1]
    except:
        return ""


df["año_de_nacimiento_vivo"] = df["fecha_nacimiento_nac_vivo"].apply(
    _ano_nacimiento_vivo_func
)
columnas_finales = [
    "edo_captura",
    "edo_nac_madre",
    "fecha_nac_madre",
    "edad_madre",
    "estado_conyugal",
    "entidad_residencia_madre",
    "numero_embarazos",
    "hijos_nacidos_muertos",
    "hijos_nacidos_vivos",
    "hijos_sobrevivientes",
    "el_hijo_anterior_nacio",
    "vive_aun_hijo_anterior",
    "orden_nacimiento",
    "recibio_atencion_prenatal",
    "trimestre_recibio_primera_consulta",
    "total_consultas_recibidas",
    "madre_sobrevivio_al_parto",
    "escolaridad_madre",
    "ocupacion_habitual_madre",
    "trabaja_actualmente",
    "fecha_nacimiento_nac_vivo",
    "hora_nacimiento_nac_vivo",
    "sexo_nac_vivo",
    "semanas_gestacion_nac_vivo",
    "talla_nac_vivo",
    "peso_nac_vivo",
    "valoracion_apgar_nac_vivo",
    "valoracion_silverman_nac_vivo",
    "producto_de_un_embarazo",
    "codigo_anomalia",
    "entidad_certifico",
]
df[columnas_finales].to_csv("2010-2016.csv")
5873377 + 15044707
20918084