{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "043492dd-e09f-440f-ad35-e2e741860bba", "metadata": {}, "outputs": [], "source": [ "from functools import cache\n", "import pandas as pd\n", "\n", "pd.set_option(\"display.max_columns\", None)" ] }, { "cell_type": "code", "execution_count": 2, "id": "558043e1-1724-4bf6-8acf-e85c18b0150e", "metadata": {}, "outputs": [], "source": [ "estados_mexicanos = {\n", " \"AGUASCALIENTES\",\n", " \"BAJA CALIFORNIA\",\n", " \"BAJA CALIFORNIA SUR\",\n", " \"CAMPECHE\",\n", " \"CHIAPAS\",\n", " \"CHIHUAHUA\",\n", " \"COAHUILA DE ZARAGOZA\",\n", " \"COLIMA\",\n", " \"DISTRITO FEDERAL\",\n", " \"DURANGO\",\n", " \"GUANAJUATO\",\n", " \"GUERRERO\",\n", " \"HIDALGO\",\n", " \"JALISCO\",\n", " \"MEXICO\",\n", " \"MICHOACAN DE OCAMPO\",\n", " \"MORELOS\",\n", " \"NAYARIT\",\n", " \"NUEVO LEON\",\n", " \"OAXACA\",\n", " \"PUEBLA\",\n", " \"QUERETARO DE ARTEAGA\",\n", " \"QUINTANA ROO\",\n", " \"SAN LUIS POTOSI\",\n", " \"SINALOA\",\n", " \"SONORA\",\n", " \"TABASCO\",\n", " \"TAMAULIPAS\",\n", " \"TLAXCALA\",\n", " \"VERACRUZ DE IGNACIO DE LA LLAVE\",\n", " \"YUCATAN\",\n", " \"ZACATECAS\",\n", "}" ] }, { "cell_type": "code", "execution_count": 3, "id": "6b047178-2902-4eb2-9a34-0b7d7beb277e", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/var/folders/05/y38rqjl55hjb_hbnypxzgrsw0000gn/T/ipykernel_93405/3168623387.py:1: DtypeWarning: Columns (21) have mixed types. Specify dtype option on import or set low_memory=False.\n", " df = pd.read_csv(\"2010-2019.csv\")\n" ] } ], "source": [ "df = pd.read_csv(\"2010-2019.csv\")" ] }, { "cell_type": "code", "execution_count": 6, "id": "61675b16-391b-4821-8376-f92ec4b5b916", "metadata": {}, "outputs": [], "source": [ "def _ano_nacimiento_vivo_func(str_date):\n", " try:\n", " return str_date.split(\"/\")[-1]\n", " except:\n", " return \"\"\n", "\n", "\n", "df[\"año_de_nacimiento_vivo\"] = df[\"fecha_nacimiento_nac_vivo\"].apply(\n", " _ano_nacimiento_vivo_func\n", ")" ] }, { "cell_type": "code", "execution_count": 34, "id": "87a086d4-bab8-43a8-a121-8aaf3554e672", "metadata": {}, "outputs": [], "source": [ "df = df[(5 < df[\"edad_madre\"]) & (df[\"edad_madre\"] < 90)]" ] }, { "cell_type": "code", "execution_count": 35, "id": "f8eff617-7273-435f-a09a-8db4ec005ee0", "metadata": {}, "outputs": [], "source": [ "df_trisomias = df[df[\"codigo_anomalia\"].apply(lambda x: \"Q9\" in str(x))]" ] }, { "cell_type": "code", "execution_count": 36, "id": "1ff41e12-b6cd-41db-bd1b-47c2aa21c45e", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
edad_madre
countmeanstdminmax
edo_capturaaño_de_nacimiento_vivo
AGUASCALIENTES20102930.5862079.0376881645
20113433.8235296.8156261745
20123029.6000008.8808201743
20133030.4000009.7612891543
20142328.9565227.9685651941
.....................
ZACATECAS20151331.3076927.9517781943
2016829.0000009.9713881645
2017932.55555610.0138791843
20181533.0000008.0267411641
20191226.5833335.4682281835
\n", "

320 rows × 5 columns

\n", "
" ], "text/plain": [ " edad_madre \n", " count mean std min max\n", "edo_captura año_de_nacimiento_vivo \n", "AGUASCALIENTES 2010 29 30.586207 9.037688 16 45\n", " 2011 34 33.823529 6.815626 17 45\n", " 2012 30 29.600000 8.880820 17 43\n", " 2013 30 30.400000 9.761289 15 43\n", " 2014 23 28.956522 7.968565 19 41\n", "... ... ... ... .. ..\n", "ZACATECAS 2015 13 31.307692 7.951778 19 43\n", " 2016 8 29.000000 9.971388 16 45\n", " 2017 9 32.555556 10.013879 18 43\n", " 2018 15 33.000000 8.026741 16 41\n", " 2019 12 26.583333 5.468228 18 35\n", "\n", "[320 rows x 5 columns]" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "consulta_trisomias = df_trisomias.groupby(\n", " [\"edo_captura\", \"año_de_nacimiento_vivo\"]\n", ").agg(\n", " {\n", " \"edad_madre\": [\n", " \"count\",\n", " \"mean\",\n", " \"std\",\n", " \"min\",\n", " \"max\",\n", " ],\n", " }\n", ")\n", "consulta_trisomias" ] }, { "cell_type": "code", "execution_count": 37, "id": "942da486-5c14-4d37-a775-009151c68f29", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
edad_madre
countmeanstdminmax
edo_capturaaño_de_nacimiento_vivo
AGUASCALIENTES20102697325.5697926.3640831052
20112836125.5760736.3621881147
20122884025.5105766.3701191247
20132869525.4353026.3435201053
20142871825.4340486.3214841256
.....................
ZACATECAS20153009925.6191576.4127981257
20163011825.6419756.4022621051
20172995525.6638966.3654961353
20182823525.7569336.4072071050
20192680025.9786196.402249950
\n", "

320 rows × 5 columns

\n", "
" ], "text/plain": [ " edad_madre \n", " count mean std min max\n", "edo_captura año_de_nacimiento_vivo \n", "AGUASCALIENTES 2010 26973 25.569792 6.364083 10 52\n", " 2011 28361 25.576073 6.362188 11 47\n", " 2012 28840 25.510576 6.370119 12 47\n", " 2013 28695 25.435302 6.343520 10 53\n", " 2014 28718 25.434048 6.321484 12 56\n", "... ... ... ... .. ..\n", "ZACATECAS 2015 30099 25.619157 6.412798 12 57\n", " 2016 30118 25.641975 6.402262 10 51\n", " 2017 29955 25.663896 6.365496 13 53\n", " 2018 28235 25.756933 6.407207 10 50\n", " 2019 26800 25.978619 6.402249 9 50\n", "\n", "[320 rows x 5 columns]" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Edades de madres\n", "consulta_total = df.groupby([\"edo_captura\", \"año_de_nacimiento_vivo\"]).agg(\n", " {\n", " \"edad_madre\": [\n", " \"count\",\n", " \"mean\",\n", " \"std\",\n", " \"min\",\n", " \"max\",\n", " ],\n", " }\n", ")\n", "consulta_total" ] }, { "cell_type": "code", "execution_count": 38, "id": "5290532e-d470-49b6-bd68-07eab1b86e4c", "metadata": {}, "outputs": [], "source": [ "consulta = consulta_total.join(\n", " consulta_trisomias, rsuffix=\"_trisomias\", lsuffix=\"_general\"\n", ")" ] }, { "cell_type": "code", "execution_count": 39, "id": "7a171ccc-139d-4fd3-b438-0475dd43e27b", "metadata": {}, "outputs": [], "source": [ "consulta[\"porcentaje\"] = (\n", " consulta[(\"edad_madre_trisomias\", \"count\")]\n", " / consulta[(\"edad_madre_general\", \"count\")]\n", ")" ] }, { "cell_type": "code", "execution_count": 40, "id": "2d932831-b2ce-46e4-a531-edd08d4d5ecb", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
edad_madre_generaledad_madre_trisomiasporcentaje
countmeanstdminmaxcountmeanstdminmax
edo_capturaaño_de_nacimiento_vivo
AGUASCALIENTES20102697325.5697926.36408310522930.5862079.03768816450.001075
20112836125.5760736.36218811473433.8235296.81562617450.001199
20122884025.5105766.37011912473029.6000008.88082017430.001040
20132869525.4353026.34352010533030.4000009.76128915430.001045
20142871825.4340486.32148412562328.9565227.96856519410.000801
.......................................
ZACATECAS20153009925.6191576.41279812571331.3076927.95177819430.000432
20163011825.6419756.4022621051829.0000009.97138816450.000266
20172995525.6638966.3654961353932.55555610.01387918430.000300
20182823525.7569336.40720710501533.0000008.02674116410.000531
20192680025.9786196.4022499501226.5833335.46822818350.000448
\n", "

320 rows × 11 columns

\n", "
" ], "text/plain": [ " edad_madre_general \\\n", " count mean std \n", "edo_captura año_de_nacimiento_vivo \n", "AGUASCALIENTES 2010 26973 25.569792 6.364083 \n", " 2011 28361 25.576073 6.362188 \n", " 2012 28840 25.510576 6.370119 \n", " 2013 28695 25.435302 6.343520 \n", " 2014 28718 25.434048 6.321484 \n", "... ... ... ... \n", "ZACATECAS 2015 30099 25.619157 6.412798 \n", " 2016 30118 25.641975 6.402262 \n", " 2017 29955 25.663896 6.365496 \n", " 2018 28235 25.756933 6.407207 \n", " 2019 26800 25.978619 6.402249 \n", "\n", " edad_madre_trisomias \\\n", " min max count mean \n", "edo_captura año_de_nacimiento_vivo \n", "AGUASCALIENTES 2010 10 52 29 30.586207 \n", " 2011 11 47 34 33.823529 \n", " 2012 12 47 30 29.600000 \n", " 2013 10 53 30 30.400000 \n", " 2014 12 56 23 28.956522 \n", "... .. .. ... ... \n", "ZACATECAS 2015 12 57 13 31.307692 \n", " 2016 10 51 8 29.000000 \n", " 2017 13 53 9 32.555556 \n", " 2018 10 50 15 33.000000 \n", " 2019 9 50 12 26.583333 \n", "\n", " porcentaje \n", " std min max \n", "edo_captura año_de_nacimiento_vivo \n", "AGUASCALIENTES 2010 9.037688 16 45 0.001075 \n", " 2011 6.815626 17 45 0.001199 \n", " 2012 8.880820 17 43 0.001040 \n", " 2013 9.761289 15 43 0.001045 \n", " 2014 7.968565 19 41 0.000801 \n", "... ... .. .. ... \n", "ZACATECAS 2015 7.951778 19 43 0.000432 \n", " 2016 9.971388 16 45 0.000266 \n", " 2017 10.013879 18 43 0.000300 \n", " 2018 8.026741 16 41 0.000531 \n", " 2019 5.468228 18 35 0.000448 \n", "\n", "[320 rows x 11 columns]" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "consulta" ] }, { "cell_type": "code", "execution_count": null, "id": "5f5a6d5e-7bb9-4ee6-aaa5-e2318ceb927a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "03e58d58-0616-45ff-90dd-37c1182d1d4a", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.6" } }, "nbformat": 4, "nbformat_minor": 5 }