24 KiB
24 KiB
from functools import cache
import pandas as pd
pd.set_option("display.max_columns", None)estados_mexicanos = {
"AGUASCALIENTES",
"BAJA CALIFORNIA",
"BAJA CALIFORNIA SUR",
"CAMPECHE",
"CHIAPAS",
"CHIHUAHUA",
"COAHUILA DE ZARAGOZA",
"COLIMA",
"DISTRITO FEDERAL",
"DURANGO",
"GUANAJUATO",
"GUERRERO",
"HIDALGO",
"JALISCO",
"MEXICO",
"MICHOACAN DE OCAMPO",
"MORELOS",
"NAYARIT",
"NUEVO LEON",
"OAXACA",
"PUEBLA",
"QUERETARO DE ARTEAGA",
"QUINTANA ROO",
"SAN LUIS POTOSI",
"SINALOA",
"SONORA",
"TABASCO",
"TAMAULIPAS",
"TLAXCALA",
"VERACRUZ DE IGNACIO DE LA LLAVE",
"YUCATAN",
"ZACATECAS",
}df = pd.read_csv("2010-2019.csv")/var/folders/05/y38rqjl55hjb_hbnypxzgrsw0000gn/T/ipykernel_93495/3168623387.py:1: DtypeWarning: Columns (21) have mixed types. Specify dtype option on import or set low_memory=False.
df = pd.read_csv("2010-2019.csv")
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
)df = df[(5 < df["edad_madre"]) & (df["edad_madre"] < 90)]df_trisomias = df[df["codigo_anomalia"].apply(lambda x: "Q9" in str(x))]consulta_trisomias = df_trisomias.groupby(["año_de_nacimiento_vivo"]).agg(
{
"edad_madre": [
"count",
"mean",
"std",
"min",
"max",
],
}
)
consulta_trisomias| edad_madre | |||||
|---|---|---|---|---|---|
| count | mean | std | min | max | |
| año_de_nacimiento_vivo | |||||
| 2010 | 930 | 30.546237 | 8.244939 | 10 | 48 |
| 2011 | 1051 | 31.010466 | 8.193777 | 12 | 49 |
| 2012 | 961 | 30.462019 | 8.310565 | 13 | 47 |
| 2013 | 1055 | 31.182938 | 8.247919 | 11 | 51 |
| 2014 | 1031 | 31.018429 | 8.356304 | 13 | 50 |
| 2015 | 1016 | 31.500984 | 8.295052 | 14 | 52 |
| 2016 | 1044 | 31.453065 | 8.147413 | 14 | 47 |
| 2017 | 1043 | 31.410355 | 8.174581 | 13 | 47 |
| 2018 | 1059 | 31.064212 | 8.173198 | 13 | 48 |
| 2019 | 941 | 32.018066 | 8.195918 | 13 | 47 |
# Edades de madres
consulta_total = df.groupby(["año_de_nacimiento_vivo"]).agg(
{
"edad_madre": [
"count",
"mean",
"std",
"min",
"max",
],
}
)
consulta_total| edad_madre | |||||
|---|---|---|---|---|---|
| count | mean | std | min | max | |
| año_de_nacimiento_vivo | |||||
| 2010 | 2063533 | 25.253220 | 6.319567 | 9 | 58 |
| 2011 | 2156751 | 25.234223 | 6.331894 | 9 | 58 |
| 2012 | 2197327 | 25.195768 | 6.321840 | 9 | 58 |
| 2013 | 2189257 | 25.198235 | 6.322081 | 9 | 59 |
| 2014 | 2173773 | 25.276009 | 6.322130 | 9 | 58 |
| 2015 | 2143345 | 25.367835 | 6.296604 | 9 | 59 |
| 2016 | 2079251 | 25.468008 | 6.292815 | 9 | 59 |
| 2017 | 2037647 | 25.510821 | 6.305873 | 9 | 62 |
| 2018 | 1940338 | 25.678051 | 6.328369 | 9 | 60 |
| 2019 | 1867693 | 25.840630 | 6.342544 | 9 | 58 |
consulta = consulta_total.join(
consulta_trisomias, rsuffix="_trisomias", lsuffix="_general"
)consulta["porcentaje"] = (
consulta[("edad_madre_trisomias", "count")]
/ consulta[("edad_madre_general", "count")]
)consulta| edad_madre_general | edad_madre_trisomias | porcentaje | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| count | mean | std | min | max | count | mean | std | min | max | ||
| año_de_nacimiento_vivo | |||||||||||
| 2010 | 2063533 | 25.253220 | 6.319567 | 9 | 58 | 930 | 30.546237 | 8.244939 | 10 | 48 | 0.000451 |
| 2011 | 2156751 | 25.234223 | 6.331894 | 9 | 58 | 1051 | 31.010466 | 8.193777 | 12 | 49 | 0.000487 |
| 2012 | 2197327 | 25.195768 | 6.321840 | 9 | 58 | 961 | 30.462019 | 8.310565 | 13 | 47 | 0.000437 |
| 2013 | 2189257 | 25.198235 | 6.322081 | 9 | 59 | 1055 | 31.182938 | 8.247919 | 11 | 51 | 0.000482 |
| 2014 | 2173773 | 25.276009 | 6.322130 | 9 | 58 | 1031 | 31.018429 | 8.356304 | 13 | 50 | 0.000474 |
| 2015 | 2143345 | 25.367835 | 6.296604 | 9 | 59 | 1016 | 31.500984 | 8.295052 | 14 | 52 | 0.000474 |
| 2016 | 2079251 | 25.468008 | 6.292815 | 9 | 59 | 1044 | 31.453065 | 8.147413 | 14 | 47 | 0.000502 |
| 2017 | 2037647 | 25.510821 | 6.305873 | 9 | 62 | 1043 | 31.410355 | 8.174581 | 13 | 47 | 0.000512 |
| 2018 | 1940338 | 25.678051 | 6.328369 | 9 | 60 | 1059 | 31.064212 | 8.173198 | 13 | 48 | 0.000546 |
| 2019 | 1867693 | 25.840630 | 6.342544 | 9 | 58 | 941 | 32.018066 | 8.195918 | 13 | 47 | 0.000504 |
Pendiente
Generar gráfica de cajas con edades de las madres con hijos de trisomias.