<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>python | Carlos Mendez</title><link>https://carlos-mendez.org/es/tag/python/</link><atom:link href="https://carlos-mendez.org/es/tag/python/index.xml" rel="self" type="application/rss+xml"/><description>python</description><generator>Wowchemy (https://wowchemy.com)</generator><language>es-es</language><copyright>© 2018–2026 Carlos Mendez. All rights reserved.</copyright><lastBuildDate>Tue, 28 Jul 2026 00:00:00 +0000</lastBuildDate><image><url>https://carlos-mendez.org/media/icon_huedfae549300b4ca5d201a9bd09a3ecd5_79625_512x512_fill_lanczos_center_3.png</url><title>python</title><link>https://carlos-mendez.org/es/tag/python/</link></image><item><title>scspill</title><link>https://carlos-mendez.org/es/projects/scspill/</link><pubDate>Tue, 28 Jul 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/scspill/</guid><description>&lt;p>&lt;strong>Control sintético cuando el tratamiento se filtra: el efecto sobre la unidad tratada &lt;em>y&lt;/em> el desbordamiento que recibe cada donante.&lt;/strong>&lt;/p>
&lt;p>&lt;code>scspill&lt;/code> es un paquete de Python con modelos de control sintético que abandonan el supuesto SUTVA sobre el grupo de donantes. Se permite que el tratamiento alcance a los controles y cada modelo informa dos estimandos: el efecto sobre la unidad tratada, libre de contaminación, y el efecto de desbordamiento que recibe cada donante, algo que el control sintético clásico no puede expresar en absoluto. El modelo disponible hoy, &lt;code>sar&lt;/code>, canaliza los desbordamientos a través de los pesos espaciales que usted defina, escalados por una única intensidad ρ que se &lt;strong>estima en lugar de suponerse&lt;/strong>; ajusta pesos sintéticos con contracción de tipo herradura (horseshoe) y sin restricciones, de modo que los donantes pueden quedar excluidos, entrar con signo negativo o extrapolar, y devuelve incertidumbre bayesiana completa para ambos estimandos. Cuando ρ = 0 se reduce exactamente al control sintético bayesiano de tipo herradura. La arquitectura del estimador sigue a &lt;a href="https://github.com/jgreathouse9/mlsynth" target="_blank" rel="noopener">mlsynth&lt;/a> —una configuración de pydantic a la entrada y un objeto de resultados estandarizado a la salida— y los nombres de &lt;code>method&lt;/code> coinciden con los de su despachador &lt;code>SPILLSYNTH&lt;/code>, por lo que ambas bibliotecas se combinan con naturalidad.&lt;/p>
&lt;h3 id="-primeros-pasoshttpsquarcs-labgithubioscspillget-startedhtml">🚀 &lt;a href="https://quarcs-lab.github.io/scspill/get-started.html" target="_blank" rel="noopener">Primeros pasos&lt;/a>&lt;/h3>
&lt;p>Estime un modelo con la Proposición 99 de California en unas diez líneas: el &lt;strong>ATT con un intervalo de credibilidad del 95 %&lt;/strong>, la intensidad del desbordamiento ρ, el desbordamiento año por año que recibe cada donante, los diagnósticos MCMC y los gráficos contrafactuales.&lt;/p>
&lt;p>&lt;a href="https://colab.research.google.com/github/quarcs-lab/scspill/blob/main/notebooks/california.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h3 id="-modeloshttpsquarcs-labgithubioscspillmodels">🧬 &lt;a href="https://quarcs-lab.github.io/scspill/models/" target="_blank" rel="noopener">Modelos&lt;/a>&lt;/h3>
&lt;p>Hoy se distribuye un modelo: &lt;a href="https://quarcs-lab.github.io/scspill/models/sar.html" target="_blank" rel="noopener">&lt;code>sar&lt;/code>&lt;/a>, el control sintético bayesiano con desbordamiento autorregresivo espacial de &lt;a href="https://doi.org/10.1093/ectj/utag006" target="_blank" rel="noopener">Sakaguchi y Tagawa (2026)&lt;/a>. Otros tres modelos que incorporan desbordamientos están en la &lt;a href="https://quarcs-lab.github.io/scspill/models/#planned" target="_blank" rel="noopener">hoja de ruta&lt;/a>: el de Cao y Dowd, el control sintético inclusivo de Di Stefano y Mellace, y el SCG con interferencia parcial de Grossi y coautores. &lt;strong>No están implementados&lt;/strong>, y &lt;code>SCSPILLConfig&lt;/code> rechaza sus nombres en lugar de recurrir a otro modelo de forma silenciosa.&lt;/p>
&lt;h3 id="-validaciónhttpsquarcs-labgithubioscspillarticlesvalidationhtml">🧪 &lt;a href="https://quarcs-lab.github.io/scspill/articles/validation.html" target="_blank" rel="noopener">Validación&lt;/a>&lt;/h3>
&lt;p>La evidencia de que el muestreador de &lt;code>sar&lt;/code> es correcto: la &lt;strong>prueba de distribución conjunta de Geweke (2004)&lt;/strong>, cuadrículas de sensibilidad a las distribuciones a priori, verificaciones predictivas a priori y validación cruzada frente a los intervalos de credibilidad congelados del código en R de los autores.&lt;/p>
&lt;h2 id="qué-incluye">Qué incluye&lt;/h2>
&lt;p>&lt;strong>&lt;code>scspill&lt;/code>&lt;/strong> — la capa de modelos. &lt;code>SCSPILL(config).fit()&lt;/code> devuelve el ATT y su intervalo de credibilidad, la trayectoria contrafactual, la distribución posterior de ρ, un panel de desbordamientos por tiempo y donante, y los diagnósticos MCMC.&lt;/p>
&lt;p>&lt;strong>&lt;code>scspill.validation&lt;/code>&lt;/strong> — la validación del muestreador de &lt;code>sar&lt;/code>: la prueba de distribución conjunta de Geweke, las cuadrículas de sensibilidad a las distribuciones a priori y las verificaciones predictivas a priori.&lt;/p>
&lt;p>&lt;strong>&lt;code>scspill.simulate&lt;/code>&lt;/strong> — el &lt;a href="https://quarcs-lab.github.io/scspill/articles/simulation-study.html" target="_blank" rel="noopener">motor de Monte Carlo&lt;/a> de &lt;code>sar&lt;/code>: un proceso generador de datos SAR sobre una retícula de contigüidad tipo torre y la comparación SCM / BSCM / SCSPILL que sustenta los cuadros 1 y 2 del artículo.&lt;/p>
&lt;p>&lt;strong>&lt;code>scspill.data&lt;/code>&lt;/strong> — los paneles de desbordamiento que se describen más abajo. Son independientes del modelo, así que cualquier modelo que se añada más adelante podrá usarlos sin cambios.&lt;/p>
&lt;p>&lt;strong>&lt;code>sar&lt;/code> está validado, no solo implementado&lt;/strong> — se contrasta con el paquete de replicación en R de los autores: las distribuciones posteriores de California y Sudán frente a los intervalos de credibilidad congelados en R, la cuadrícula de Monte Carlo frente a los cuadros congelados del artículo, y los estadísticos predictivos a priori hasta el tercer decimal. Las opciones por defecto son &lt;em>fieles al artículo&lt;/em>: se corrigen varios errores documentados de la implementación de referencia, cada uno con una vía de escape o una comparación que cuantifica la diferencia. Véase la &lt;a href="https://quarcs-lab.github.io/scspill/models/sar.html" target="_blank" rel="noopener">página del modelo &lt;code>sar&lt;/code>&lt;/a>.&lt;/p>
&lt;h2 id="casos-de-estudio-incluidos">Casos de estudio incluidos&lt;/h2>
&lt;p>&lt;code>scspill.data&lt;/code> incluye dos &lt;a href="https://quarcs-lab.github.io/scspill/articles/datasets.html" target="_blank" rel="noopener">conjuntos de datos&lt;/a> listos para estimar:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>California&lt;/strong> — la Proposición 99, 39 estados (1970–2000): ventas de cigarrillos per cápita con pesos de contigüidad tipo torre, mediante &lt;code>scspill.data.load_california()&lt;/code>.&lt;/li>
&lt;li>&lt;strong>Sudán&lt;/strong> — la secesión de 2011, 34 países africanos (2000–2015): PIB per cápita con pesos de red comercial, mediante &lt;code>scspill.data.load_sudan()&lt;/code>. Se desarrolla en el &lt;a href="https://quarcs-lab.github.io/scspill/sudan.html" target="_blank" rel="noopener">caso de estudio de Sudán&lt;/a>.&lt;/li>
&lt;/ul>
&lt;h2 id="instalación">Instalación&lt;/h2>
&lt;p>Instale la versión más reciente desde PyPI (la instalación básica usa solo NumPy/SciPy; el extra &lt;code>numba&lt;/code> añade muestreadores compilados con JIT):&lt;/p>
&lt;pre>&lt;code class="language-bash">pip install scspill # NumPy/SciPy sampler backend
pip install &amp;quot;scspill[numba]&amp;quot; # + JIT-compiled samplers (~10x faster)
pip install &amp;quot;scspill @ git+https://github.com/quarcs-lab/scspill.git&amp;quot; # latest
&lt;/code>&lt;/pre>
&lt;p>Requiere Python 3.10 o superior.&lt;/p>
&lt;h2 id="de-un-vistazo">De un vistazo&lt;/h2>
&lt;p>Cargue un caso de estudio incluido, ajuste el muestreador y lea ambos estimandos:&lt;/p>
&lt;pre>&lt;code class="language-python">from scspill import SCSPILL
from scspill.data import load_california
panel = load_california() # Prop 99 panel + rook-contiguity weights
result = SCSPILL(
{**panel.config_kwargs(), &amp;quot;m_iter&amp;quot;: 20_000, &amp;quot;burn&amp;quot;: 10_000, &amp;quot;seed&amp;quot;: 42}
).fit()
result.att, result.att_ci # treatment effect on California + 95% CrI
result.rho_hat, result.rho_ci # spillover intensity posterior
result.spillover_panel[&amp;quot;Nevada&amp;quot;] # the effect received by Nevada, per year
result.diagnostics() # ESS / R-hat / MCSE per chain
result.plot(kind=&amp;quot;panel&amp;quot;) # counterfactual | effect | top spillovers
&lt;/code>&lt;/pre>
&lt;p>Diríjase a &lt;a href="https://quarcs-lab.github.io/scspill/get-started.html" target="_blank" rel="noopener">Primeros pasos&lt;/a>, &lt;a href="https://quarcs-lab.github.io/scspill/models/" target="_blank" rel="noopener">Modelos&lt;/a> y &lt;a href="https://quarcs-lab.github.io/scspill/articles/validation.html" target="_blank" rel="noopener">Validación&lt;/a> para ver los estimadores en acción.&lt;/p>
&lt;h2 id="construido-sobre">Construido sobre&lt;/h2>
&lt;p>&lt;code>scspill&lt;/code> mantiene sus dependencias deliberadamente ligeras: la pila científica moderna de Python y nada más.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://numpy.org" target="_blank" rel="noopener">NumPy&lt;/a>&lt;/strong> y &lt;strong>&lt;a href="https://scipy.org" target="_blank" rel="noopener">SciPy&lt;/a>&lt;/strong> — el motor del muestreador&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://pandas.pydata.org" target="_blank" rel="noopener">pandas&lt;/a>&lt;/strong> — los paneles y las tablas de desbordamientos&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://docs.pydantic.dev" target="_blank" rel="noopener">pydantic&lt;/a>&lt;/strong> — la configuración validada del estimador&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://matplotlib.org" target="_blank" rel="noopener">matplotlib&lt;/a>&lt;/strong> — las figuras de diagnóstico y contrafactuales&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://numba.pydata.org" target="_blank" rel="noopener">numba&lt;/a>&lt;/strong> — muestreadores opcionales compilados con JIT&lt;/li>
&lt;/ul>
&lt;h2 id="agradecimiento">Agradecimiento&lt;/h2>
&lt;p>&lt;code>scspill&lt;/code> es obra de Carlos Mendez, Shosei Sakaguchi y Hayato Tagawa. El paquete de Python está escrito y es mantenido por Carlos Mendez; el modelo &lt;code>sar&lt;/code> y su implementación original en R/C++ son obra de Shosei Sakaguchi y Hayato Tagawa. Su &lt;a href="https://doi.org/10.5281/zenodo.19066186" target="_blank" rel="noopener">paquete de replicación&lt;/a> se distribuye bajo licencia MIT, su aviso de derechos de autor se conserva en el archivo &lt;code>LICENSE&lt;/code> de la biblioteca, y cada versión de &lt;code>scspill&lt;/code> se valida de forma cruzada frente a sus resultados congelados. La arquitectura del estimador sigue a &lt;a href="https://github.com/jgreathouse9/mlsynth" target="_blank" rel="noopener">mlsynth&lt;/a>, de Jared Greathouse; la infraestructura de documentación sigue al paquete &lt;a href="https://github.com/quarcs-lab/geometrics" target="_blank" rel="noopener">geometrics&lt;/a> del QuaRCS Lab.&lt;/p>
&lt;p>Si utiliza &lt;code>scspill&lt;/code>, cite el software (los metadatos legibles por máquina están en &lt;a href="https://github.com/quarcs-lab/scspill/blob/main/CITATION.cff" target="_blank" rel="noopener">&lt;code>CITATION.cff&lt;/code>&lt;/a>):&lt;/p>
&lt;blockquote>
&lt;p>Mendez, C., Sakaguchi, S., &amp;amp; Tagawa, H. (2026). &lt;em>Synthetic Control Models with Spillovers in Python&lt;/em> (version 0.2.1). &lt;a href="https://github.com/quarcs-lab/scspill" target="_blank" rel="noopener">https://github.com/quarcs-lab/scspill&lt;/a>&lt;/p>
&lt;/blockquote>
&lt;p>Distribuido bajo la licencia MIT.&lt;/p></description></item><item><title>geometrics</title><link>https://carlos-mendez.org/es/projects/geometrics/</link><pubDate>Thu, 02 Jul 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/geometrics/</guid><description>&lt;p>&lt;strong>Explore, analice y aprenda sobre el crecimiento, la convergencia y la desigualdad regionales — de forma espacial, en Python.&lt;/strong>&lt;/p>
&lt;p>&lt;code>geometrics&lt;/code> se apoya en la familia &lt;a href="https://pysal.org/" target="_blank" rel="noopener">PySAL&lt;/a> y traduce los análisis estándar de la literatura de convergencia regional en funciones fáciles de aplicar que devuelven figuras interactivas de &lt;a href="https://plotly.com/python/" target="_blank" rel="noopener">Plotly&lt;/a>, tablas con calidad de publicación de &lt;a href="https://posit-dev.github.io/great-tables/" target="_blank" rel="noopener">Great Tables&lt;/a> y DataFrames ordenados (tidy). Combina un flujo de trabajo &lt;strong>Explorar / Analizar / Aprender&lt;/strong> con una &lt;strong>capa pedagógica&lt;/strong> integrada que interpreta y explica cada resultado, y &lt;strong>tres aplicaciones sin código&lt;/strong>. Está pensada para estudiantes, docentes e investigadores aplicados por igual.&lt;/p>
&lt;h3 id="-explorarhttpsquarcs-labgithubiogeometricsexplorehtml">🗺️ &lt;a href="https://quarcs-lab.github.io/geometrics/explore.html" target="_blank" rel="noopener">Explorar&lt;/a>&lt;/h3>
&lt;p>Cartografíe y describa sus regiones: mapas coropléticos clasificados y animados, conectividad de pesos espaciales, &lt;strong>diagramas de dispersión de Moran y mapas de conglomerados LISA&lt;/strong>, y vistas espaciotemporales.&lt;/p>
&lt;p>&lt;a href="https://geometrics-explore.streamlit.app/" target="_blank" rel="noopener">🚀 Abrir la app&lt;/a> · &lt;a href="https://colab.research.google.com/github/quarcs-lab/geometrics/blob/main/notebooks/explore.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h3 id="-analizarhttpsquarcs-labgithubiogeometricsanalyzehtml">🧮 &lt;a href="https://quarcs-lab.github.io/geometrics/analyze.html" target="_blank" rel="noopener">Analizar&lt;/a>&lt;/h3>
&lt;p>Estime los modelos: &lt;strong>convergencia β, σ y de clubes&lt;/strong>, modelos econométricos espaciales con impactos, dinámicas de Markov y de Markov espacial, &lt;strong>desigualdad de Gini/Theil&lt;/strong> con descomposición espacial, y GWR / GWR multiescala.&lt;/p>
&lt;p>&lt;a href="https://geometrics-analyze.streamlit.app/" target="_blank" rel="noopener">🚀 Abrir la app&lt;/a> · &lt;a href="https://colab.research.google.com/github/quarcs-lab/geometrics/blob/main/notebooks/analyze.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h3 id="-aprenderhttpsquarcs-labgithubiogeometricslearnhtml">📚 &lt;a href="https://quarcs-lab.github.io/geometrics/learn.html" target="_blank" rel="noopener">Aprender&lt;/a>&lt;/h3>
&lt;p>Conozca las ideas detrás de los métodos: &lt;strong>11 entornos de práctica (sandboxes) ejecutables&lt;/strong> donde usted ajusta una verdad conocida, un índice de explicadores de &lt;strong>30 temas&lt;/strong> y una lectura en lenguaje sencillo de cada resultado.&lt;/p>
&lt;p>&lt;a href="https://geometrics-learn.streamlit.app/" target="_blank" rel="noopener">🚀 Abrir la app&lt;/a> · &lt;a href="https://colab.research.google.com/github/quarcs-lab/geometrics/blob/main/notebooks/learn.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h2 id="pruebe-las-aplicaciones-en-su-navegador">Pruebe las aplicaciones en su navegador&lt;/h2>
&lt;p>Sin instalación ni código: las tres aplicaciones de &lt;code>geometrics&lt;/code> ejecutan todo el flujo de trabajo en su navegador: mapas y modelos con apuntar y hacer clic, tablas ordenables y exportaciones reproducibles. Cada una es la versión sin código de un caso de estudio de la documentación.&lt;/p>
&lt;p>&lt;a href="https://geometrics-explore.streamlit.app/" target="_blank" rel="noopener">🗺️ App Explorar&lt;/a> · &lt;a href="https://geometrics-analyze.streamlit.app/" target="_blank" rel="noopener">🧮 App Analizar&lt;/a> · &lt;a href="https://geometrics-learn.streamlit.app/" target="_blank" rel="noopener">📚 App Aprender&lt;/a>&lt;/p>
&lt;h2 id="qué-incluye">Qué incluye&lt;/h2>
&lt;p>&lt;strong>Mapas y ESDA&lt;/strong> — mapas coropléticos clasificados / animados, conectividad de pesos espaciales, diagramas de dispersión de Moran, mapas de conglomerados LISA y la I de Moran a lo largo del tiempo.&lt;/p>
&lt;p>&lt;strong>Dinámicas espaciotemporales&lt;/strong> — evolución de la distribución transversal y mapas de calor por entidad y tiempo.&lt;/p>
&lt;p>&lt;strong>Convergencia&lt;/strong> — convergencia β con estimadores MCO o espaciales, convergencia σ y clubes de convergencia de Phillips–Sul con sus mapas.&lt;/p>
&lt;p>&lt;strong>Econometría espacial&lt;/strong> — el conjunto &lt;code>spreg&lt;/code>, diagnósticos LM con recomendación de modelo y robustez ante pesos alternativos.&lt;/p>
&lt;p>&lt;strong>Dinámicas de distribución&lt;/strong> — análisis de transiciones de Markov y de Markov espacial.&lt;/p>
&lt;p>&lt;strong>Desigualdad&lt;/strong> — tendencias de Gini / Theil con descomposición espacial y descomposición de Theil entre/dentro (between/within).&lt;/p>
&lt;p>&lt;strong>Modelos locales&lt;/strong> — GWR y GWR multiescala con coeficientes locales cartografiados.&lt;/p>
&lt;p>&lt;strong>Entornos de práctica (sandboxes)&lt;/strong> — 11 funciones pedagógicas que simulan datos a partir de procesos generadores conocidos.&lt;/p>
&lt;h2 id="casos-de-estudio-incluidos">Casos de estudio incluidos&lt;/h2>
&lt;p>&lt;code>geometrics.data&lt;/code> incluye dos casos de estudio listos para analizar:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>India&lt;/strong> — 520 distritos, luces nocturnas satelitales (1996–2010): &lt;code>gm.data.load_india()&lt;/code>, &lt;code>load_india_states()&lt;/code>.&lt;/li>
&lt;li>&lt;strong>Bolivia&lt;/strong> — PIB local anclado en las PWT (US\$ en PPA de 2021, 2012–2022) a tres escalas geográficas: &lt;code>gm.data.load_bolivia()&lt;/code> (112 provincias), &lt;code>load_bolivia_departments()&lt;/code> (9 departamentos) y &lt;code>load_bolivia_grid()&lt;/code> (1603 celdas).&lt;/li>
&lt;/ul>
&lt;h2 id="instalación">Instalación&lt;/h2>
&lt;p>Instale la versión más reciente desde PyPI (la instalación básica cubre la mayoría de los flujos de trabajo; los extras añaden las dinámicas de Markov, las aplicaciones sin código y la exportación a PNG):&lt;/p>
&lt;pre>&lt;code class="language-bash">pip install geometrics # core
pip install &amp;quot;geometrics[dynamics]&amp;quot; # + Markov / spatial Markov (giddy)
pip install &amp;quot;geometrics[streamlit]&amp;quot; # + the three no-code apps
pip install &amp;quot;geometrics[all]&amp;quot; # everything, incl. PNG export
&lt;/code>&lt;/pre>
&lt;p>Requiere Python 3.11 o superior.&lt;/p>
&lt;h2 id="de-un-vistazo">De un vistazo&lt;/h2>
&lt;p>Cargue un caso de estudio incluido, asigne las etiquetas de sus variables y cartografíelo: cada figura es un objeto interactivo de Plotly.&lt;/p>
&lt;pre>&lt;code class="language-python">import geometrics as gm
# India — 520 districts, satellite nighttime lights (1996–2010)
gdf, df, df_dict = gm.data.load_india()
df = gm.set_labels(df, df_dict, set_panel=True)
# A classified choropleth of nighttime lights in 2010
gm.explore_choropleth_map(df, &amp;quot;ntl_total&amp;quot;, gdf=gdf, period=2010).fig
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Estime la convergencia y deje que se explique sola&lt;/strong> — convergencia β y σ, cada una con una lectura en lenguaje sencillo:&lt;/p>
&lt;pre>&lt;code class="language-python">beta = gm.analyze_beta_convergence(df, &amp;quot;ntl_total&amp;quot;, model=&amp;quot;ols&amp;quot;)
print(beta.interpret()) # plain-language, associational reading
sigma = gm.analyze_sigma_convergence(df, &amp;quot;ntl_total&amp;quot;)
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Aprenda sobre la marcha&lt;/strong> — entornos de práctica y explicadores de conceptos:&lt;/p>
&lt;pre>&lt;code class="language-python">gm.learn_beta_convergence(convergence_rate=0.02) # a runnable concept sandbox
print(gm.explain(&amp;quot;spatial_autocorrelation&amp;quot;)) # a concept explainer; gm.list_topics() lists all 30
&lt;/code>&lt;/pre>
&lt;p>Diríjase a &lt;a href="https://quarcs-lab.github.io/geometrics/explore.html" target="_blank" rel="noopener">Explorar&lt;/a>, &lt;a href="https://quarcs-lab.github.io/geometrics/analyze.html" target="_blank" rel="noopener">Analizar&lt;/a> y &lt;a href="https://quarcs-lab.github.io/geometrics/learn.html" target="_blank" rel="noopener">Aprender&lt;/a> para ver cada función en acción.&lt;/p>
&lt;h2 id="construido-sobre">Construido sobre&lt;/h2>
&lt;p>&lt;code>geometrics&lt;/code> se apoya en el ecosistema de análisis espacial &lt;a href="https://pysal.org/" target="_blank" rel="noopener">PySAL&lt;/a> y en la pila moderna de datos de Python:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://pysal.org/" target="_blank" rel="noopener">PySAL&lt;/a>&lt;/strong> — &lt;code>libpysal&lt;/code> (pesos), &lt;code>esda&lt;/code> (I de Moran / LISA), &lt;code>giddy&lt;/code> (dinámicas de distribución), &lt;code>inequality&lt;/code> (Gini / Theil), &lt;code>mapclassify&lt;/code> (clasificación de mapas coropléticos), &lt;code>spreg&lt;/code> (regresión espacial) y &lt;code>mgwr&lt;/code> (GWR multiescala)&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://geopandas.org/" target="_blank" rel="noopener">geopandas&lt;/a>&lt;/strong> — marcos de datos geoespaciales&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://plotly.com/python/" target="_blank" rel="noopener">Plotly&lt;/a>&lt;/strong> — figuras interactivas&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://posit-dev.github.io/great-tables/" target="_blank" rel="noopener">Great Tables&lt;/a>&lt;/strong> — tablas con calidad de publicación&lt;/li>
&lt;/ul>
&lt;h2 id="agradecimiento">Agradecimiento&lt;/h2>
&lt;p>&lt;code>geometrics&lt;/code> se desarrolla en el &lt;a href="https://quarcs-lab.org" target="_blank" rel="noopener">QuaRCS Lab&lt;/a> (Ciencia Regional Cuantitativa y Computacional) y se apoya en el proyecto &lt;a href="https://pysal.org/" target="_blank" rel="noopener">PySAL&lt;/a>, geopandas, Plotly y Great Tables. Si utiliza &lt;code>geometrics&lt;/code> en su investigación, cite el repositorio (consulte &lt;a href="https://github.com/quarcs-lab/geometrics/blob/main/CITATION.cff" target="_blank" rel="noopener">&lt;code>CITATION.cff&lt;/code>&lt;/a>) y los paquetes subyacentes de PySAL.&lt;/p></description></item><item><title>expdpy</title><link>https://carlos-mendez.org/es/projects/expdpy/</link><pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/expdpy/</guid><description>&lt;p>&lt;strong>Explore, analice y aprenda datos de panel — de forma interactiva, en Python.&lt;/strong>&lt;/p>
&lt;p>&lt;code>expdpy&lt;/code> combina funciones componibles que devuelven figuras interactivas de &lt;a href="https://plotly.com/python/" target="_blank" rel="noopener">Plotly&lt;/a> y tablas con calidad de publicación de &lt;a href="https://posit-dev.github.io/great-tables/" target="_blank" rel="noopener">Great Tables&lt;/a> con &lt;strong>econometría al estilo fixest&lt;/strong>, una &lt;strong>capa pedagógica&lt;/strong> integrada que interpreta y explica cada resultado, y &lt;strong>tres aplicaciones sin código&lt;/strong>. Está pensada para estudiantes, docentes e investigadores aplicados por igual.&lt;/p>
&lt;h3 id="-explorarhttpscmg777githubioexpdpyexplorehtml">🔍 &lt;a href="https://cmg777.github.io/expdpy/explore.html" target="_blank" rel="noopener">Explorar&lt;/a>&lt;/h3>
&lt;p>Describa y visualice su panel: tablas, distribuciones, mapas de valores faltantes, tendencias temporales, comparaciones por grupos, diagramas de dispersión, &lt;strong>variación intra/inter (within/between)&lt;/strong> y &lt;strong>dinámicas de panel&lt;/strong>.&lt;/p>
&lt;p>&lt;a href="https://expdpy-explore.streamlit.app/" target="_blank" rel="noopener">🚀 Abrir la app&lt;/a> · &lt;a href="https://colab.research.google.com/github/cmg777/expdpy/blob/main/notebooks/explore.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h3 id="-analizarhttpscmg777githubioexpdpyanalyzehtml">🧮 &lt;a href="https://cmg777.github.io/expdpy/analyze.html" target="_blank" rel="noopener">Analizar&lt;/a>&lt;/h3>
&lt;p>Estime modelos: efectos fijos / aleatorios / &lt;strong>aleatorios correlacionados&lt;/strong>, FWL, la prueba de Hausman, inferencia robusta, &lt;strong>estudio de eventos / DiD&lt;/strong>, &lt;strong>convergencia β/σ/de clubes&lt;/strong> y la curva de &lt;strong>ondas de Kuznets&lt;/strong>.&lt;/p>
&lt;p>&lt;a href="https://expdpy-analyze.streamlit.app/" target="_blank" rel="noopener">🚀 Abrir la app&lt;/a> · &lt;a href="https://colab.research.google.com/github/cmg777/expdpy/blob/main/notebooks/analyze.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h3 id="-aprenderhttpscmg777githubioexpdpylearnhtml">📚 &lt;a href="https://cmg777.github.io/expdpy/learn.html" target="_blank" rel="noopener">Aprender&lt;/a>&lt;/h3>
&lt;p>Conozca las ideas detrás de los métodos: &lt;strong>9 entornos de práctica (sandboxes) ejecutables&lt;/strong> donde usted ajusta una verdad conocida, un índice de explicadores de &lt;strong>27 temas&lt;/strong> y una lectura en lenguaje sencillo de cada resultado.&lt;/p>
&lt;p>&lt;a href="https://expdpy-learn.streamlit.app/" target="_blank" rel="noopener">🚀 Abrir la app&lt;/a> · &lt;a href="https://colab.research.google.com/github/cmg777/expdpy/blob/main/notebooks/learn.ipynb" target="_blank" rel="noopener">▶ Abrir en Colab&lt;/a>&lt;/p>
&lt;h2 id="pruebe-las-aplicaciones-en-su-navegador">Pruebe las aplicaciones en su navegador&lt;/h2>
&lt;p>Sin instalación ni código: las tres aplicaciones &lt;code>ExPdPy&lt;/code> ejecutan todo el flujo de trabajo en su navegador: una canalización de ejemplo, análisis con apuntar y hacer clic, tablas ordenables y exportación reproducible a cuadernos. Cada una es la versión sin código de un caso de estudio de la documentación.&lt;/p>
&lt;p>&lt;a href="https://expdpy-explore.streamlit.app/" target="_blank" rel="noopener">🔍 App Explorar&lt;/a> · &lt;a href="https://expdpy-analyze.streamlit.app/" target="_blank" rel="noopener">🧮 App Analizar&lt;/a> · &lt;a href="https://expdpy-learn.streamlit.app/" target="_blank" rel="noopener">📚 App Aprender&lt;/a>&lt;/p>
&lt;h2 id="qué-incluye">Qué incluye&lt;/h2>
&lt;p>&lt;strong>Explorar&lt;/strong> — tablas descriptivas / de correlación / de observaciones extremas, histogramas y gráficos de barras, tendencias temporales y por cuantiles, vistas por grupos de barras / violín / tendencias, un mapa de calor de valores faltantes, diagramas de dispersión con un suavizado LOESS opcional, la descomposición intra/inter (&lt;code>xtsum&lt;/code>), trayectorias por unidad, diagnósticos de estructura del panel, dinámicas de distribución y transición, y &lt;code>treat_outliers&lt;/code>.&lt;/p>
&lt;p>&lt;strong>Analizar&lt;/strong> — MCO con &lt;strong>efectos fijos multidireccionales&lt;/strong> y &lt;strong>errores estándar agrupados (clustered)&lt;/strong> mediante &lt;a href="https://github.com/py-econometrics/pyfixest" target="_blank" rel="noopener">pyfixest&lt;/a>; un &lt;code>analyze_estimation&lt;/code> más completo (por pasos / múltiples resultados, errores estándar de Newey–West y Driscoll–Kraay); estimadores &lt;strong>agrupado (pooled) / inter (between) / de efectos fijos / de efectos aleatorios&lt;/strong> y el estimador de &lt;strong>efectos aleatorios correlacionados (Mundlak)&lt;/strong>; la &lt;strong>prueba de Hausman&lt;/strong>; posestimación (gráficos de efectos fijos, predicciones, pruebas conjuntas de Wald); &lt;strong>inferencia robusta&lt;/strong> (inferencia por aleatorización, bootstrap de clúster salvaje); gráficos de &lt;strong>Frisch–Waugh–Lovell&lt;/strong> y de &lt;strong>coeficientes&lt;/strong>; &lt;strong>estudios de eventos / diferencias en diferencias escalonadas&lt;/strong> modernos (&lt;code>did2s&lt;/code>, Sun–Abraham, LP-DiD, TWFE dinámico); &lt;strong>convergencia β, σ y de clubes&lt;/strong>; y la curva de &lt;strong>ondas de Kuznets&lt;/strong> con estimadores agrupado / inter / intra.&lt;/p>
&lt;p>&lt;strong>Aprender&lt;/strong> — cada resultado habla en lenguaje sencillo: &lt;code>.interpret()&lt;/code> ofrece una lectura &lt;strong>asociacional&lt;/strong> (nunca una afirmación causal, salvo que el diseño lo permita) y &lt;code>.explain()&lt;/code> / &lt;code>explain(topic)&lt;/code> / &lt;code>list_topics()&lt;/code> permiten explorar &lt;strong>27&lt;/strong> explicadores de conceptos. &lt;strong>Nueve entornos de práctica (sandboxes)&lt;/strong> simulan datos para que usted pueda &lt;em>ver&lt;/em> y ajustar una verdad conocida: la identidad de primeras diferencias ≈ centrado en la media ≈ variables ficticias, los efectos fijos, el agrupamiento (clustering), el sesgo por variable omitida, la convergencia β/σ/de clubes y la onda de Kuznets.&lt;/p>
&lt;p>&lt;strong>Conjuntos de datos incluidos&lt;/strong> — &lt;code>expdpy.data&lt;/code> incluye paneles listos para explorar: &lt;strong>&lt;code>kuznets&lt;/code>&lt;/strong> (la demostración insignia de la curva de Kuznets en forma de N), &lt;code>gapminder&lt;/code>, &lt;strong>&lt;code>staggered_did&lt;/code>&lt;/strong> (estudio de eventos / DiD), &lt;strong>&lt;code>productivity&lt;/code>&lt;/strong> y &lt;strong>&lt;code>bolivia112_gdppc&lt;/code>&lt;/strong> (convergencia). Consulte la página del &lt;a href="https://cmg777.github.io/expdpy/explanation/kuznets-dataset.html" target="_blank" rel="noopener">conjunto de datos kuznets&lt;/a> para ver el diccionario de datos.&lt;/p>
&lt;h2 id="instalación">Instalación&lt;/h2>
&lt;p>Instale la versión más reciente desde PyPI (los efectos aleatorios, el CRE y la prueba de Hausman funcionan de fábrica; las aplicaciones necesitan el extra &lt;code>streamlit&lt;/code>):&lt;/p>
&lt;pre>&lt;code class="language-bash">pip install expdpy
pip install &amp;quot;expdpy[streamlit]&amp;quot; # the no-code ExPdPy apps (Streamlit)
&lt;/code>&lt;/pre>
&lt;p>Usando &lt;a href="https://docs.astral.sh/uv/" target="_blank" rel="noopener">uv&lt;/a>:&lt;/p>
&lt;pre>&lt;code class="language-bash">uv pip install expdpy
uv pip install &amp;quot;expdpy[streamlit]&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Para la versión más reciente sin publicar, instale directamente desde la rama &lt;code>main&lt;/code>:&lt;/p>
&lt;pre>&lt;code class="language-bash">pip install &amp;quot;git+https://github.com/cmg777/expdpy.git&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Requiere Python 3.10+.&lt;/p>
&lt;h2 id="de-un-vistazo">De un vistazo&lt;/h2>
&lt;p>El ejemplo principal a lo largo de esta documentación es el panel &lt;code>kuznets&lt;/code> incluido (80 países × 2015–2025): un conjunto de datos sintético cuya desigualdad regional traza una &lt;strong>curva de Kuznets en forma de N&lt;/strong> en el ingreso: primero asciende, luego desciende y vuelve a ascender con ingresos muy altos.&lt;/p>
&lt;pre>&lt;code class="language-python">import expdpy as ex
from expdpy.data import load_kuznets
df = load_kuznets()
# The N-shaped regional Kuznets curve: regional inequality vs (log) GDP per capita
ex.explore_scatter_plot(
df, x=&amp;quot;log_gdp_pc&amp;quot;, y=&amp;quot;gini_regional&amp;quot;, color=&amp;quot;continent&amp;quot;, size=&amp;quot;population&amp;quot;, loess=1
).fig
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Ejecute una regresión y deje que se explique sola&lt;/strong> — efectos fijos bidireccionales, errores estándar agrupados, una lectura en lenguaje sencillo y un gráfico de coeficientes:&lt;/p>
&lt;pre>&lt;code class="language-python">res = ex.analyze_regression_table(
df,
dvs=&amp;quot;gini_regional&amp;quot;,
idvs=[&amp;quot;log_gdp_pc&amp;quot;, &amp;quot;log_gdp_pc_sq&amp;quot;, &amp;quot;log_gdp_pc_cu&amp;quot;],
feffects=[&amp;quot;country&amp;quot;, &amp;quot;year&amp;quot;],
clusters=[&amp;quot;country&amp;quot;],
)
print(res.interpret()) # plain-language, associational reading
ex.analyze_coefficient_plot(res) # themed coefficient plot with confidence intervals
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Aprenda sobre la marcha&lt;/strong> — entornos de práctica y explicadores de conceptos:&lt;/p>
&lt;pre>&lt;code class="language-python">ex.learn_first_differences() # first differences ≈ demeaning ≈ dummy variables
print(ex.explain(&amp;quot;fixed_effects&amp;quot;)) # a concept explainer; ex.list_topics() lists all 27
&lt;/code>&lt;/pre>
&lt;p>Diríjase a &lt;a href="https://cmg777.github.io/expdpy/explore.html" target="_blank" rel="noopener">Explorar&lt;/a>, &lt;a href="https://cmg777.github.io/expdpy/analyze.html" target="_blank" rel="noopener">Analizar&lt;/a> y &lt;a href="https://cmg777.github.io/expdpy/learn.html" target="_blank" rel="noopener">Aprender&lt;/a> para ver cada función en acción, o a la página del &lt;a href="https://cmg777.github.io/expdpy/explanation/kuznets-dataset.html" target="_blank" rel="noopener">conjunto de datos kuznets&lt;/a> para el diccionario de datos.&lt;/p>
&lt;h2 id="construido-sobre">Construido sobre&lt;/h2>
&lt;p>&lt;code>expdpy&lt;/code> se apoya en la pila moderna de datos y econometría de Python:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://plotly.com/python/" target="_blank" rel="noopener">Plotly&lt;/a>&lt;/strong> — figuras interactivas&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://github.com/py-econometrics/pyfixest" target="_blank" rel="noopener">pyfixest&lt;/a>&lt;/strong> — estimadores de efectos fijos y de diferencias en diferencias&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://posit-dev.github.io/great-tables/" target="_blank" rel="noopener">Great Tables&lt;/a>&lt;/strong> — tablas con calidad de publicación&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://bashtage.github.io/linearmodels/" target="_blank" rel="noopener">linearmodels&lt;/a>&lt;/strong> — efectos aleatorios / inter / aleatorios correlacionados y la prueba de Hausman&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://streamlit.io/" target="_blank" rel="noopener">Streamlit&lt;/a>&lt;/strong> — las aplicaciones &lt;code>ExPdPy&lt;/code> sin código&lt;/li>
&lt;/ul>
&lt;h2 id="agradecimiento">Agradecimiento&lt;/h2>
&lt;p>expdpy comenzó como una adaptación a Python del excelente paquete de R &lt;a href="https://github.com/trr266/ExPanDaR" target="_blank" rel="noopener">ExPanDaR&lt;/a> de &lt;strong>Joachim Gassen&lt;/strong> y el proyecto &lt;strong>TRR 266 Accounting for Transparency&lt;/strong>, y sus cimientos siguen profundamente inspirados en ese trabajo. Con el tiempo, expdpy ha crecido mucho más allá del original — estimadores al estilo fixest, herramientas de estudio de eventos / diferencias en diferencias, modelos de panel de efectos aleatorios y aleatorios correlacionados, análisis de convergencia y una capa pedagógica integrada que interpreta y explica los resultados — y seguirá evolucionando.&lt;/p>
&lt;p>Agradecemos a los autores de ExPanDaR. Por favor, cite el trabajo original al usar &lt;code>expdpy&lt;/code> en investigaciones (consulte &lt;a href="https://github.com/cmg777/expdpy/blob/main/CITATION.cff" target="_blank" rel="noopener">&lt;code>CITATION.cff&lt;/code>&lt;/a>).&lt;/p></description></item><item><title>Indonesia514</title><link>https://carlos-mendez.org/es/projects/indonesia514/</link><pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/indonesia514/</guid><description>&lt;h1 id="indonesia514-un-repositorio-de-ciencia-de-datos-para-estudiar-el-desarrollo-regional-en-los-514-distritos-de-indonesia">Indonesia514: un repositorio de ciencia de datos para estudiar el desarrollo regional en los 514 distritos de Indonesia&lt;/h1>
&lt;p>&lt;a href="https://github.com/quarcs-lab/indonesia514" target="_blank" rel="noopener">¡Bienvenido/a a &lt;strong>Indonesia514&lt;/strong>!&lt;/a> Este proyecto centraliza datos geoespaciales e indicadores económicos regionales —incluidos el PIB, la inversión y el gasto público— de los &lt;strong>514 distritos&lt;/strong> de Indonesia. Todos los conjuntos de datos comparten un identificador común, &lt;code>districtID&lt;/code>, de modo que pueden fusionarse en una única tabla analítica.&lt;/p>
&lt;p>Este repositorio está organizado para personas dedicadas a la investigación y a la ciencia de datos interesadas en:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Economía regional:&lt;/strong> medir el crecimiento, la formación de capital y la política fiscal a nivel distrital.&lt;/li>
&lt;li>&lt;strong>Análisis espacial:&lt;/strong> vincular los indicadores económicos con las geometrías de los distritos para la cartografía y la econometría espacial.&lt;/li>
&lt;li>&lt;strong>Flujos de trabajo reproducibles:&lt;/strong> transmitir conjuntos de datos abiertos directamente a Python mediante una única clave de unión.&lt;/li>
&lt;/ul>
&lt;blockquote>
&lt;p>&lt;strong>⚙️ En desarrollo activo.&lt;/strong> Este repositorio es un borrador en etapa inicial. Los límites de los distritos están completos en formato GeoJSON y el sitio web bilingüe (inglés / bahasa indonesio) está disponible, pero los conjuntos de datos económicos contienen actualmente &lt;strong>datos de muestra de 16 distritos&lt;/strong>: las series completas de los 514 distritos están pendientes. Los paneles interactivos y los cuadernos analíticos están planificados y aún no se han publicado.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="-conjuntos-de-datos">💾 Conjuntos de datos&lt;/h2>
&lt;p>Conjuntos de datos curados y organizados en módulos, todos vinculados por un identificador único (&lt;code>districtID&lt;/code>).&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align:left">Conjunto de datos&lt;/th>
&lt;th style="text-align:left">Ruta del archivo&lt;/th>
&lt;th style="text-align:left">Descripción&lt;/th>
&lt;th style="text-align:left">Clave de unión&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>PIB&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/gdp/gdp.csv&lt;/code>&lt;/td>
&lt;td style="text-align:left">Producto interno bruto a nivel distrital (2010-2022).&lt;/td>
&lt;td style="text-align:left">&lt;code>districtID&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>GFCF&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/gfcf/gfcf.csv&lt;/code>&lt;/td>
&lt;td style="text-align:left">Formación bruta de capital fijo, una medida de la inversión (2010-2022).&lt;/td>
&lt;td style="text-align:left">&lt;code>districtID&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>Gasto público&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/gs/gs.csv&lt;/code>&lt;/td>
&lt;td style="text-align:left">Gasto público y distribución de la política fiscal (2010-2022).&lt;/td>
&lt;td style="text-align:left">&lt;code>districtID&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>Vector espacial&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/maps/mapIdonesia514tp.geojson&lt;/code>&lt;/td>
&lt;td style="text-align:left">Límites geométricos (polígonos) de los 514 distritos.&lt;/td>
&lt;td style="text-align:left">&lt;code>districtID&lt;/code>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;strong>⚠️ Nota importante sobre los identificadores:&lt;/strong> la clave principal para unir todos los conjuntos de datos de este repositorio es &lt;strong>&lt;code>districtID&lt;/code>&lt;/strong>. Los archivos de PIB, GFCF y gasto público contienen actualmente una muestra de 16 distritos; se están añadiendo los datos completos de los 514 distritos. Trate siempre &lt;code>districtID&lt;/code> de forma coherente (como &lt;code>int&lt;/code> o &lt;code>string&lt;/code>) en ambos dataframes antes de fusionarlos.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="-inicio-rápido">🐍 Inicio rápido&lt;/h2>
&lt;p>Transmita los conjuntos de datos directamente desde GitHub y fusiónelos por &lt;code>districtID&lt;/code> con &lt;code>pandas&lt;/code>. Puede ejecutar el código siguiente en un &lt;a href="https://colab.research.google.com/notebooks/empty.ipynb" target="_blank" rel="noopener">borrador de Google Colab&lt;/a> en blanco, sin necesidad de configuración ni instalación.&lt;/p>
&lt;pre>&lt;code class="language-python">import pandas as pd
# -----------------------------------------------------------------------------
# 1. SETUP: Define the raw GitHub URL to stream data directly into Pandas.
# -----------------------------------------------------------------------------
REPO_URL = &amp;quot;https://raw.githubusercontent.com/quarcs-lab/indonesia514/main&amp;quot;
# -----------------------------------------------------------------------------
# 2. LOAD: Read the economic CSVs.
# -----------------------------------------------------------------------------
df_gdp = pd.read_csv(f&amp;quot;{REPO_URL}/gdp/gdp.csv&amp;quot;)
df_gfcf = pd.read_csv(f&amp;quot;{REPO_URL}/gfcf/gfcf.csv&amp;quot;)
df_gs = pd.read_csv(f&amp;quot;{REPO_URL}/gs/gs.csv&amp;quot;)
# -----------------------------------------------------------------------------
# 3. MERGE: Combine the indicators on the common district identifier.
# -----------------------------------------------------------------------------
df = pd.merge(df_gdp, df_gfcf[['districtID', 'gfcf_2022']], on='districtID')
df = pd.merge(df, df_gs[['districtID', 'gs_2022']], on='districtID')
&lt;/code>&lt;/pre>
&lt;hr>
&lt;h2 id="-cómo-citar">📜 Cómo citar&lt;/h2>
&lt;p>Si utiliza este repositorio en su investigación, cítelo con los siguientes metadatos.&lt;/p>
&lt;h3 id="formato-apa">Formato APA&lt;/h3>
&lt;p>Mendez, C., Abdulah, R., Arvianto, B., &amp;amp; Leiva, F. (2026). Indonesia514: A data science repository to study regional development in Indonesia. GitHub. &lt;a href="https://github.com/quarcs-lab/indonesia514" target="_blank" rel="noopener">https://github.com/quarcs-lab/indonesia514&lt;/a>&lt;/p>
&lt;h3 id="formato-bibtex">Formato BibTeX&lt;/h3>
&lt;pre>&lt;code class="language-bibtex">@misc{indonesia5142026,
author = {Mendez, Carlos and Abdulah, Rusli and Arvianto, Bimo and Leiva, Favio},
title = {{Indonesia514}: A Data Science Repository to Study Regional Development in Indonesia},
year = {2026},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/quarcs-lab/indonesia514}}
}
&lt;/code>&lt;/pre>
&lt;hr>
&lt;h2 id="licencia">Licencia&lt;/h2>
&lt;p>Este repositorio se distribuye bajo la &lt;strong>Licencia MIT&lt;/strong>, que permite una amplia reutilización con la atribución adecuada.&lt;/p>
&lt;hr>
&lt;h2 id="-cómo-contribuir">🤝 Cómo contribuir&lt;/h2>
&lt;p>¡Las contribuciones son bienvenidas! Si va a añadir los datos completos de los distritos, corregir un problema con el sistema de referencia de coordenadas (CRS), crear un nuevo cuaderno o integrar indicadores nuevos, &lt;a href="https://github.com/quarcs-lab/indonesia514/pulls" target="_blank" rel="noopener">envíe un Pull Request&lt;/a>.&lt;/p></description></item><item><title>Dominando las métricas causales</title><link>https://carlos-mendez.org/es/projects/intro2causal/</link><pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/intro2causal/</guid><description>&lt;h2 id="bienvenidoa-a-dominando-las-métricas-causales">¡Bienvenido/a a Dominando las métricas causales!&lt;/h2>
&lt;p>Una guía de estudio impulsada por IA para &lt;strong>Dominando las métricas causales&lt;/strong>. Aprenda los fundamentos de la inferencia causal con cuadernos interactivos de Python y herramientas de IA, a partir del libro de texto fundacional &lt;a href="https://www.masteringmetrics.com/" target="_blank" rel="noopener">&lt;em>Mastering &amp;lsquo;Metrics: The Path from Cause to Effect&lt;/em>&lt;/a> de Angrist &amp;amp; Pischke.&lt;/p>
&lt;p>Esta plataforma incluye:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Métodos fundamentales&lt;/strong> — Basados en &lt;em>Mastering &amp;lsquo;Metrics&lt;/em> de Angrist &amp;amp; Pischke. Aprenda inferencia causal desde los ensayos aleatorizados hasta las diferencias en diferencias.&lt;/li>
&lt;li>&lt;strong>Cuadernos de Python&lt;/strong> — Cuadernos de Google Colab sin instalación. Conjuntos de datos reales, código funcional e implementaciones completas de cada método.&lt;/li>
&lt;li>&lt;strong>Aprendizaje impulsado por IA&lt;/strong> — Múltiples tutores de IA con estilos pedagógicos diferenciados.&lt;/li>
&lt;/ul>
&lt;h2 id="cuadernos-interactivos-de-google-colab">Cuadernos interactivos de Google Colab&lt;/h2>
&lt;p>Haga clic en cualquier insignia de abajo para abrir y ejecutar al instante en su navegador:&lt;/p>
&lt;h3 id="parte-i-el-marco-conceptual">Parte I: El marco conceptual&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Temas&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>1&lt;/strong>&lt;/td>
&lt;td>Ensayos aleatorizados&lt;/td>
&lt;td>Sesgo de selección, resultados potenciales, RAND HIE&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/cmg777/intro2causal/blob/main/notebooks_colab/01-randomized-trials.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="parte-ii-las-cinco-herramientas">Parte II: Las cinco herramientas&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Temas&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>2&lt;/strong>&lt;/td>
&lt;td>Regresión&lt;/td>
&lt;td>MCO, sesgo por variable omitida, controles inadecuados&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/cmg777/intro2causal/blob/main/notebooks_colab/02-regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>3&lt;/strong>&lt;/td>
&lt;td>Variables instrumentales&lt;/td>
&lt;td>LATE, cumplidores, experimento de violencia doméstica de Minneapolis&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/cmg777/intro2causal/blob/main/notebooks_colab/03-instrumental-variables.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>4&lt;/strong>&lt;/td>
&lt;td>Regresión discontinua&lt;/td>
&lt;td>RD nítida, ancho de banda, edad legal para beber y mortalidad&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/cmg777/intro2causal/blob/main/notebooks_colab/04-regression-discontinuity.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>5&lt;/strong>&lt;/td>
&lt;td>Diferencias en diferencias&lt;/td>
&lt;td>Tendencias paralelas, efectos fijos bidireccionales, banca de la Gran Depresión&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/cmg777/intro2causal/blob/main/notebooks_colab/05-differences-in-differences.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="parte-iii-síntesis">Parte III: Síntesis&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Temas&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>6&lt;/strong>&lt;/td>
&lt;td>Los retornos de la educación&lt;/td>
&lt;td>Gemelos, trimestre de nacimiento, efectos del diploma&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/cmg777/intro2causal/blob/main/notebooks_colab/06-wages-of-schooling.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="cómo-usar-los-cuadernos">Cómo usar los cuadernos&lt;/h3>
&lt;ol>
&lt;li>&lt;strong>Haga clic en cualquier insignia &amp;ldquo;Open in Colab&amp;rdquo;&lt;/strong> de arriba&lt;/li>
&lt;li>&lt;strong>Inicie sesión&lt;/strong> con su cuenta de Google (gratuita)&lt;/li>
&lt;li>&lt;strong>Haga clic en &amp;ldquo;Ejecutar todo&amp;rdquo;&lt;/strong> en el menú Entorno de ejecución (o ejecute las celdas de forma individual)&lt;/li>
&lt;li>&lt;strong>Explore y modifique&lt;/strong> — cambie parámetros, pruebe distintos modelos, experimente con los datos&lt;/li>
&lt;li>&lt;strong>Guarde su trabajo&lt;/strong> — Archivo &amp;gt; Guardar una copia en Drive para conservar sus modificaciones&lt;/li>
&lt;/ol>
&lt;p>&lt;strong>¡Sin instalación, sin descargas, sin configuración!&lt;/strong>&lt;/p>
&lt;h2 id="autores-y-créditos">Autores y créditos&lt;/h2>
&lt;p>&lt;strong>Carlos Mendez&lt;/strong> — Implementación en Python y desarrollo de los cuadernos educativos&lt;/p>
&lt;p>&lt;strong>Joshua D. Angrist &amp;amp; Jörn-Steffen Pischke&lt;/strong> — Libro de texto original, &lt;a href="https://www.masteringmetrics.com/" target="_blank" rel="noopener">&lt;em>Mastering &amp;lsquo;Metrics&lt;/em>&lt;/a>&lt;/p></description></item><item><title>Econometría impulsada por la IA</title><link>https://carlos-mendez.org/es/publication/20260126-metricsai/</link><pubDate>Mon, 26 Jan 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/publication/20260126-metricsai/</guid><description>&lt;h1 id="-econometría-impulsada-por-la-ia">🤖 Econometría impulsada por la IA&lt;/h1>
&lt;p>&lt;strong>Una introducción mediante cuadernos de Python en la nube&lt;/strong>
&lt;img src="https://raw.githubusercontent.com/quarcs-lab/metricsai/main/images/ch00_visual_summary.jpg"
alt="Chapter 0 visual summary"
style="max-width: 100%; height: auto;">&lt;/p>
&lt;hr>
&lt;h2 id="-visión">🚀 Visión&lt;/h2>
&lt;ul>
&lt;li>🤖 La econometría en la era de la IA&lt;/li>
&lt;li>☁️ Aprendizaje interactivo en la nube&lt;/li>
&lt;li>📊 Datos reales, preguntas económicas reales&lt;/li>
&lt;/ul>
&lt;p>El aprendizaje de la econometría se replantea como un proceso activo, computacional y asistido por la IA que preserva el rigor teórico.&lt;/p>
&lt;hr>
&lt;h2 id="-por-qué-repensar-la-enseñanza-de-la-econometría">🧠 ¿Por qué repensar la enseñanza de la econometría?&lt;/h2>
&lt;ul>
&lt;li>📖 Manuales pasivos&lt;/li>
&lt;li>💻 Altas barreras técnicas&lt;/li>
&lt;li>🔗 Brecha entre la teoría y su implementación&lt;/li>
&lt;/ul>
&lt;p>Los enfoques tradicionales a menudo retrasan el análisis de datos significativo y dificultan la comprensión conceptual.&lt;/p>
&lt;hr>
&lt;h2 id="-el-enfoque-del-libro">🔄 El enfoque del libro&lt;/h2>
&lt;ul>
&lt;li>🧱 Conceptos fundamentales&lt;/li>
&lt;li>🧪 Cuadernos computacionales&lt;/li>
&lt;li>🤖 Aprendizaje potenciado por la IA&lt;/li>
&lt;/ul>
&lt;p>Un sistema de tres pilares integra la teoría, la programación y la IA para crear un ecosistema de aprendizaje activo.&lt;/p>
&lt;hr>
&lt;h2 id="-pilar-1-conceptos-fundamentales">📘 Pilar 1: Conceptos fundamentales&lt;/h2>
&lt;ul>
&lt;li>📚 Basado en Cameron (2022)&lt;/li>
&lt;li>📐 Teoría econométrica rigurosa&lt;/li>
&lt;li>🌍 Enfoque aplicado y real&lt;/li>
&lt;/ul>
&lt;p>La estructura y el contenido se ajustan a la práctica econométrica y de investigación estándar.&lt;/p>
&lt;hr>
&lt;h2 id="-estructura">🗂️ Estructura&lt;/h2>
&lt;ul>
&lt;li>🧮 Fundamentos estadísticos&lt;/li>
&lt;li>📉 Regresión bivariante&lt;/li>
&lt;li>📊 Regresión múltiple&lt;/li>
&lt;li>🔬 Temas avanzados&lt;/li>
&lt;/ul>
&lt;p>Diecisiete capítulos avanzan de forma sistemática desde los fundamentos hasta los métodos empíricos modernos.&lt;/p>
&lt;hr>
&lt;h2 id="-pilar-2-cuadernos-computacionales">☁️ Pilar 2: Cuadernos computacionales&lt;/h2>
&lt;ul>
&lt;li>🚫 Sin instalación&lt;/li>
&lt;li>🧑‍💻 Google Colab&lt;/li>
&lt;li>🌐 Acceso desde cualquier dispositivo&lt;/li>
&lt;/ul>
&lt;p>Cada capítulo se acompaña de un cuaderno interactivo de Python.&lt;/p>
&lt;hr>
&lt;h2 id="-stack-moderno-de-python">🧰 Stack moderno de Python&lt;/h2>
&lt;ul>
&lt;li>🐼 Manipulación de datos&lt;/li>
&lt;li>📐 Modelización econométrica&lt;/li>
&lt;li>📊 Visualización&lt;/li>
&lt;/ul>
&lt;p>El alumnado aprende herramientas ampliamente utilizadas y transferibles para la investigación empírica.&lt;/p>
&lt;hr>
&lt;h2 id="-aprender-programando">🔁 Aprender programando&lt;/h2>
&lt;ul>
&lt;li>✏️ Modificar y volver a ejecutar el código&lt;/li>
&lt;li>⚡ Retroalimentación inmediata&lt;/li>
&lt;li>🔍 Experimentación activa&lt;/li>
&lt;/ul>
&lt;p>La comprensión se desarrolla mediante la interacción directa con los datos y los modelos.&lt;/p>
&lt;hr>
&lt;h2 id="-pilar-3-aprendizaje-potenciado-por-la-ia">🤖 Pilar 3: Aprendizaje potenciado por la IA&lt;/h2>
&lt;ul>
&lt;li>🖼️ Resúmenes visuales&lt;/li>
&lt;li>📑 Diapositivas generadas por IA&lt;/li>
&lt;li>🎙️ Pódcast y cuestionarios&lt;/li>
&lt;/ul>
&lt;p>Múltiples modalidades refuerzan el aprendizaje y se adaptan a distintas preferencias.&lt;/p>
&lt;hr>
&lt;h2 id="-uso-responsable-de-la-ia">⚖️ Uso responsable de la IA&lt;/h2>
&lt;ul>
&lt;li>🧠 La IA apoya el pensamiento, no lo reemplaza&lt;/li>
&lt;li>🔍 La verificación es esencial&lt;/li>
&lt;li>📘 La teoría sigue siendo central&lt;/li>
&lt;/ul>
&lt;p>La IA mejora la comprensión, pero no sustituye al razonamiento econométrico.&lt;/p>
&lt;hr>
&lt;h2 id="-sistema-de-aprendizaje-de-tres-componentes">🔗 Sistema de aprendizaje de tres componentes&lt;/h2>
&lt;ul>
&lt;li>📕 Este libro&lt;/li>
&lt;li>🌐 El sitio web metricsAI&lt;/li>
&lt;li>📘 El manual de Cameron&lt;/li>
&lt;/ul>
&lt;p>En conjunto, conforman un entorno de aprendizaje completo y coherente.&lt;/p>
&lt;hr>
&lt;h2 id="-conclusión">🎓 Conclusión&lt;/h2>
&lt;ul>
&lt;li>📊 La econometría a través de la computación&lt;/li>
&lt;li>🤖 Potenciada por la IA&lt;/li>
&lt;li>🌍 Accesible y rigurosa&lt;/li>
&lt;/ul></description></item><item><title>metricsAI</title><link>https://carlos-mendez.org/es/projects/metricsai/</link><pubDate>Wed, 21 Jan 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/metricsai/</guid><description>&lt;h2 id="bienvenidoa-a-metricsai">¡Bienvenido/a a metricsAI!&lt;/h2>
&lt;p>Esta plataforma de ciencia de datos ofrece una introducción moderna a la econometría combinando &lt;a href="https://colab.research.google.com/notebooks/empty.ipynb" target="_blank" rel="noopener">cuadernos de Python en la nube&lt;/a> con &lt;a href="https://notebooklm.google.com/notebook/25c819f8-8afc-49aa-8707-2bd87c18d760" target="_blank" rel="noopener">herramientas de aprendizaje con IA de NotebookLM&lt;/a>.&lt;/p>
&lt;p>Diseñada como complemento interactivo del libro de texto de Colin Cameron, &lt;a href="https://cameron.econ.ucdavis.edu/aed/index.html" target="_blank" rel="noopener">&lt;em>Analysis of Economics Data: An Introduction to Econometrics&lt;/em>&lt;/a>, metricsAI transforma capítulos estáticos en experiencias de aprendizaje dinámicas. El alumnado puede acceder a resúmenes generados por IA, código de Python y ejemplos prácticos directamente en su navegador a través de Google Colab. &lt;strong>No se requiere configuración ni instalación alguna&lt;/strong>, y los cuadernos incorporan herramientas de IA para la generación, explicación y transformación de código.&lt;/p>
&lt;h2 id="-cuadernos-interactivos-de-google-colab">📓 Cuadernos interactivos de Google Colab&lt;/h2>
&lt;p>Haga clic en cualquier insignia de abajo para abrir y ejecutar al instante en su navegador:&lt;/p>
&lt;h3 id="parte-i-fundamentos-estadísticos">Parte I: Fundamentos estadísticos&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>1&lt;/strong>&lt;/td>
&lt;td>Análisis de datos económicos&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch01_Analysis_of_Economics_Data.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>2&lt;/strong>&lt;/td>
&lt;td>Resumen de datos univariantes&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch02_Univariate_Data_Summary.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>3&lt;/strong>&lt;/td>
&lt;td>La media muestral&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch03_The_Sample_Mean.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>4&lt;/strong>&lt;/td>
&lt;td>Inferencia estadística sobre la media&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch04_Statistical_Inference_for_the_Mean.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="parte-ii-regresión-bivariante">Parte II: Regresión bivariante&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>5&lt;/strong>&lt;/td>
&lt;td>Resumen de datos bivariantes&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch05_Bivariate_Data_Summary.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>6&lt;/strong>&lt;/td>
&lt;td>El estimador de mínimos cuadrados&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch06_The_Least_Squares_Estimator.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>7&lt;/strong>&lt;/td>
&lt;td>Inferencia estadística para la regresión bivariante&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch07_Statistical_Inference_for_Bivariate_Regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>8&lt;/strong>&lt;/td>
&lt;td>Estudios de caso de regresión bivariante&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch08_Case_Studies_for_Bivariate_Regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>9&lt;/strong>&lt;/td>
&lt;td>Modelos con logaritmos naturales&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch09_Models_with_Natural_Logarithms.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="parte-iii-regresión-múltiple">Parte III: Regresión múltiple&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>10&lt;/strong>&lt;/td>
&lt;td>Resumen de datos para la regresión múltiple&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch10_Data_Summary_for_Multiple_Regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>11&lt;/strong>&lt;/td>
&lt;td>Inferencia estadística para la regresión múltiple&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch11_Statistical_Inference_for_Multiple_Regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>12&lt;/strong>&lt;/td>
&lt;td>Temas adicionales sobre la regresión múltiple&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch12_Further_Topics_in_Multiple_Regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>13&lt;/strong>&lt;/td>
&lt;td>Estudios de caso de regresión múltiple&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch13_Case_Studies_for_Multiple_Regression.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="parte-iv-temas-avanzados">Parte IV: Temas avanzados&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Capítulo&lt;/th>
&lt;th>Título&lt;/th>
&lt;th>Cuaderno de Colab&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>14&lt;/strong>&lt;/td>
&lt;td>Regresión con variables indicadoras&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch14_Regression_with_Indicator_Variables.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>15&lt;/strong>&lt;/td>
&lt;td>Regresión con variables transformadas&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch15_Regression_with_Transformed_Variables.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>16&lt;/strong>&lt;/td>
&lt;td>Comprobación del modelo y los datos&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch16_Checking_the_Model_and_Data.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>17&lt;/strong>&lt;/td>
&lt;td>Datos de panel, series temporales y causalidad&lt;/td>
&lt;td>&lt;a href="https://colab.research.google.com/github/quarcs-lab/metricsai/blob/main/notebooks_colab/ch17_Panel_Data_Time_Series_Data_Causation.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="cómo-usar-los-cuadernos">Cómo usar los cuadernos&lt;/h3>
&lt;ol>
&lt;li>&lt;strong>Haga clic en cualquier insignia &amp;ldquo;Open in Colab&amp;rdquo;&lt;/strong> de arriba&lt;/li>
&lt;li>&lt;strong>Inicie sesión&lt;/strong> con su cuenta de Google (gratuita)&lt;/li>
&lt;li>&lt;strong>Haga clic en &amp;ldquo;Ejecutar todo&amp;rdquo;&lt;/strong> en el menú Entorno de ejecución (o ejecute las celdas de forma individual)&lt;/li>
&lt;li>&lt;strong>Explore y modifique&lt;/strong> — cambie parámetros, pruebe distintos modelos, experimente con los datos&lt;/li>
&lt;li>&lt;strong>Guarde su trabajo&lt;/strong> — Archivo → Guardar una copia en Drive para conservar sus modificaciones&lt;/li>
&lt;/ol>
&lt;p>&lt;strong>¡Sin instalación, sin descargas, sin configuración!&lt;/strong>&lt;/p>
&lt;h2 id="-autores-y-créditos">👥 Autores y créditos&lt;/h2>
&lt;p>&lt;strong>Carlos Mendez&lt;/strong> — Implementación en Python y desarrollo de los cuadernos educativos&lt;/p>
&lt;p>&lt;strong>A. Colin Cameron&lt;/strong> — Libro de texto, datos, código en Stata/R y diapositivas originales.&lt;/p></description></item><item><title>DS4Bolivia</title><link>https://carlos-mendez.org/es/projects/ds4bolivia/</link><pubDate>Wed, 14 Jan 2026 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/ds4bolivia/</guid><description>&lt;h1 id="ds4bolivia-un-repositorio-de-ciencia-de-datos-para-estudiar-el-desarrollo-geoespacial-en-bolivia">DS4Bolivia: un repositorio de ciencia de datos para estudiar el desarrollo geoespacial en Bolivia&lt;/h1>
&lt;p>&lt;a href="https://github.com/quarcs-lab/ds4bolivia" target="_blank" rel="noopener">¡Bienvenido/a a &lt;strong>DS4Bolivia&lt;/strong>!&lt;/a> Este proyecto reúne conjuntos de datos espaciales y socioeconómicos, paneles interactivos y flujos de trabajo computacionales centrados en los &lt;strong>339 municipios&lt;/strong> de Bolivia. Está diseñado para tender un puente entre el análisis espacial y los Objetivos de Desarrollo Sostenible (ODS).&lt;/p>
&lt;p>Este repositorio está organizado para personas dedicadas a la investigación y a la ciencia de datos interesadas en:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Econometría espacial:&lt;/strong> comprender las disparidades, el crecimiento y la agrupación regionales.&lt;/li>
&lt;li>&lt;strong>Aprendizaje automático espacial:&lt;/strong> aprovechar las imágenes satelitales (observación de la Tierra) para el modelado predictivo.&lt;/li>
&lt;li>&lt;strong>Desarrollo sostenible:&lt;/strong> hacer seguimiento de los indicadores de los ODS a un nivel local granular.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="-paneles-geoespaciales-interactivos">🖥️ Paneles geoespaciales interactivos&lt;/h2>
&lt;p>Explore los datos sin escribir código. Estas aplicaciones visualizan la dinámica espacio-temporal de indicadores clave del desarrollo.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://carlos-mendez.projects.earthengine.app/view/geoexplorer1v100bolivia" target="_blank" rel="noopener">Dinámica espacio-temporal de la población, la luminosidad, la cobertura del suelo y el PIB (2013-2019)&lt;/a>: visualiza la evolución de la densidad de población, las luces nocturnas, los cambios en la cobertura del suelo y las estimaciones del PIB en los municipios bolivianos en 2013 y 2019.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="-cuadernos-computacionales-en-la-nube">🐍 Cuadernos computacionales en la nube&lt;/h2>
&lt;p>Tutoriales paso a paso que le ayudan a reproducir nuestro análisis. Estos cuadernos utilizan bibliotecas de Python como &lt;code>GeoPandas&lt;/code> y &lt;code>PySAL&lt;/code>.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://colab.research.google.com/github/quarcs-lab/ds4bolivia/blob/master/notebooks/esda.ipynb" target="_blank" rel="noopener">Introducción al análisis exploratorio de datos espaciales (ESDA)&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;em>Enfoque:&lt;/em> aprenda a detectar agrupaciones y valores atípicos espaciales mediante la I de Moran global y local.&lt;/li>
&lt;li>&lt;em>Conceptos clave:&lt;/em> autocorrelación espacial, estadísticos LISA, mapas coropléticos.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="-conjuntos-de-datos-espacialmente-explícitos">💾 Conjuntos de datos espacialmente explícitos&lt;/h2>
&lt;p>Conjuntos de datos curados y listos para el análisis. Estos archivos están preprocesados para ajustarse a los límites municipales de Bolivia.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://github.com/quarcs-lab/ds4bolivia/blob/master/datasets/sdgs_satelliteEmbeddings2017.csv" target="_blank" rel="noopener">ODS y embeddings satelitales (2017)&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;em>Descripción:&lt;/em> un conjunto de datos combinado que une indicadores socioeconómicos (ODS) con vectores de características de alta dimensión extraídos de imágenes satelitales.&lt;/li>
&lt;li>&lt;em>Caso de uso:&lt;/em> entrenar modelos de aprendizaje automático para predecir índices de pobreza o de desarrollo a partir de patrones visuales desde el espacio.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="-cómo-citar">📜 Cómo citar&lt;/h2>
&lt;p>Si utiliza este repositorio en su investigación, cítelo con los siguientes metadatos.&lt;/p>
&lt;h3 id="formato-apa">Formato APA&lt;/h3>
&lt;p>Mendez, C., Gonzales, E., Leoni, P., Andersen, L., Hendrix, P. (2024). DS4Bolivia: A Data Science Repository to Study GeoSpatial Development in Bolivia [Data set]. GitHub. &lt;a href="https://github.com/quarcs-lab/ds4bolivia" target="_blank" rel="noopener">https://github.com/quarcs-lab/ds4bolivia&lt;/a>&lt;/p>
&lt;h3 id="formato-bibtex">Formato BibTeX&lt;/h3>
&lt;pre>&lt;code class="language-bibtex">@misc{ds4bolivia2026,
author = {Mendez, Carlos and Gonzales, Erick and Leoni, Pedro and Andersen, Lykke and Hendrix, Peralta},
title = {{DS4Bolivia}: A Data Science Repository to Study GeoSpatial Development in Bolivia},
year = {2026},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/quarcs-lab/ds4bolivia}}
}
&lt;/code>&lt;/pre>
&lt;hr>
&lt;h2 id="-construya-su-propio-conjunto-de-datos">🚀 Construya su propio conjunto de datos&lt;/h2>
&lt;p>Los conjuntos de datos están organizados en módulos, todos vinculados por un identificador único (&lt;code>asdf_id&lt;/code>).&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align:left">Categoría del conjunto de datos&lt;/th>
&lt;th style="text-align:left">Ruta del archivo&lt;/th>
&lt;th style="text-align:left">Descripción&lt;/th>
&lt;th style="text-align:left">Clave de unión&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>Nombres de regiones&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/regionNames/regionNames.csv&lt;/code>&lt;/td>
&lt;td style="text-align:left">Metadatos administrativos (nombres de municipios y de departamentos).&lt;/td>
&lt;td style="text-align:left">&lt;code>asdf_id&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>Socioeconómico&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/sdg/sdg.csv&lt;/code>&lt;/td>
&lt;td style="text-align:left">Índices de los Objetivos de Desarrollo Sostenible (ODS) y métricas de pobreza.&lt;/td>
&lt;td style="text-align:left">&lt;code>asdf_id&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>Características satelitales&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/satelliteEmbeddings/satelliteEmbeddings2017.csv&lt;/code>&lt;/td>
&lt;td style="text-align:left">Vectores de características (embeddings) extraídos de imágenes satelitales diurnas.&lt;/td>
&lt;td style="text-align:left">&lt;code>asdf_id&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align:left">&lt;strong>Vector espacial&lt;/strong>&lt;/td>
&lt;td style="text-align:left">&lt;code>/maps/bolivia339geoqueryOpt.geojson&lt;/code>&lt;/td>
&lt;td style="text-align:left">Límites geométricos (polígonos) de todos los municipios.&lt;/td>
&lt;td style="text-align:left">&lt;code>asdf_id&lt;/code>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;strong>⚠️ Nota importante sobre los identificadores:&lt;/strong> &amp;gt; La clave principal para unir todos los conjuntos de datos de este repositorio es &lt;strong>&lt;code>asdf_id&lt;/code>&lt;/strong>.&lt;br>
Aunque &lt;code>mun_id&lt;/code> (el código gubernamental estándar) está presente en los datos administrativos, &lt;code>asdf_id&lt;/code> garantiza la coherencia entre los embeddings satelitales y los archivos de mapas optimizados que se proporcionan aquí. Asegúrese siempre de que esta columna se trate de forma coherente como &lt;code>int&lt;/code> o &lt;code>string&lt;/code> en ambos dataframes antes de fusionarlos.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>Puede ejecutar los ejemplos de abajo de inmediato en &lt;a href="https://colab.research.google.com/notebooks/empty.ipynb" target="_blank" rel="noopener">Google Colab&lt;/a>.&lt;/p>
&lt;p>&lt;a href="https://colab.research.google.com/notebooks/empty.ipynb" target="_blank" rel="noopener">&lt;img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab">&lt;/a>&lt;/p>
&lt;h3 id="ejemplo-1-integración-de-datos-de-atributos">Ejemplo 1: integración de datos de atributos&lt;/h3>
&lt;p>Este script muestra cómo fusionar los nombres administrativos, los indicadores socioeconómicos y las características de aprendizaje automático satelitales en un único dataframe analítico.&lt;/p>
&lt;pre>&lt;code class="language-python">import pandas as pd
# -----------------------------------------------------------------------------
# 1. SETUP: Define Source URLs
# We use the raw GitHub URL to stream data directly into Colab/Pandas.
# -----------------------------------------------------------------------------
REPO_URL = &amp;quot;https://raw.githubusercontent.com/quarcs-lab/ds4bolivia/master&amp;quot;
url_names = f&amp;quot;{REPO_URL}/regionNames/regionNames.csv&amp;quot;
url_sdg = f&amp;quot;{REPO_URL}/sdg/sdg.csv&amp;quot;
url_emb = f&amp;quot;{REPO_URL}/satelliteEmbeddings/satelliteEmbeddings2017.csv&amp;quot;
# -----------------------------------------------------------------------------
# 2. LOAD: Read CSVs
# -----------------------------------------------------------------------------
print(&amp;quot;Loading datasets...&amp;quot;)
df_names = pd.read_csv(url_names)
df_sdg = pd.read_csv(url_sdg)
df_embeddings = pd.read_csv(url_emb)
# -----------------------------------------------------------------------------
# 3. MERGE: Combine Dataframes
# -----------------------------------------------------------------------------
# Step A: Attach SDG data to Names
df_merged_step1 = pd.merge(df_names, df_sdg, on='asdf_id', how='inner')
# Step B: Attach Satellite Embeddings to the result
df_final = pd.merge(df_merged_step1, df_embeddings, on='asdf_id', how='inner')
# -----------------------------------------------------------------------------
# 4. VERIFY
# -----------------------------------------------------------------------------
print(f&amp;quot;Merge Complete.&amp;quot;)
print(f&amp;quot;Original Municipalities: {len(df_names)}&amp;quot;)
print(f&amp;quot;Final Merged Rows: {len(df_final)}&amp;quot;)
print(f&amp;quot;Total Columns: {len(df_final.columns)}&amp;quot;)
# Display the first few rows (names + first few embedding columns)
display(df_final[['mun', 'dep', 'index_sdg1', 'A00', 'A01', 'A02']].head())
&lt;/code>&lt;/pre>
&lt;h3 id="ejemplo-2-integración-de-datos-espaciales-y-de-atributos">Ejemplo 2: integración de datos espaciales y de atributos&lt;/h3>
&lt;p>Este script toma los datos fusionados del Ejemplo 1 y los une a las geometrías de los municipios (GeoJSON) para el análisis y la representación espacial.&lt;/p>
&lt;pre>&lt;code class="language-python">
import geopandas as gpd
import matplotlib.pyplot as plt
# -----------------------------------------------------------------------------
# 1. LOAD SPATIAL DATA
# We load the optimized GeoJSON file containing municipality boundaries.
# -----------------------------------------------------------------------------
geojson_url = f&amp;quot;{REPO_URL}/maps/bolivia339geoqueryOpt.geojson&amp;quot;
print(&amp;quot;Loading GeoJSON map...&amp;quot;)
gdf_boundaries = gpd.read_file(geojson_url)
# -----------------------------------------------------------------------------
# 2. SPATIAL DATA PREPARATION
# GeoJSON often loads IDs as objects/strings, while CSVs load as integers.
# -----------------------------------------------------------------------------
# Force 'asdf_id' to integer to match the pandas dataframe
gdf_boundaries['asdf_id'] = gdf_boundaries['asdf_id'].astype(int)
# -----------------------------------------------------------------------------
# 3. ATTRIBUTE JOIN
# Merge the spatial dataframe (gdf) with the attribute dataframe (df_final).
# This creates a 'GeoDataFrame' capable of spatial operations.
# -----------------------------------------------------------------------------
gdf_bolivia = gdf_boundaries.merge(df_final, on='asdf_id', how='inner')
# -----------------------------------------------------------------------------
# 4. VISUALIZATION (Choropleth Map)
# Plot the &amp;quot;No Poverty&amp;quot; SDG Index (SDG 1)
# -----------------------------------------------------------------------------
fig, ax = plt.subplots(1, 1, figsize=(12, 10))
gdf_bolivia.plot(
column='index_sdg1', # Variable to map
cmap='viridis', # Color palette (perceptually uniform)
linewidth=0.1, # Border width
edgecolor='white', # Border color
legend=True,
legend_kwds={'label': &amp;quot;SDG 1 Index (No Poverty)&amp;quot;, 'orientation': &amp;quot;horizontal&amp;quot;},
ax=ax
)
ax.set_title(&amp;quot;Bolivia: SDG 1 Index by Municipality&amp;quot;, fontsize=15)
ax.set_axis_off() # Turn off lat/lon axis numbers for cleaner look
plt.show()
&lt;/code>&lt;/pre>
&lt;hr>
&lt;h2 id="fuentes-de-datos">Fuentes de datos&lt;/h2>
&lt;ul>
&lt;li>Los indicadores de los ODS fueron construidos originalmente por &lt;a href="https://atlas.sdsnbolivia.org" target="_blank" rel="noopener">Andersen, L. E., Canelas, S., Gonzales, A., Peñaranda, L. (2020) Atlas municipal de los Objetivos de Desarrollo Sostenible en Bolivia 2020. La Paz: Universidad Privada Boliviana, SDSN Bolivia&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="-cómo-contribuir">🤝 Cómo contribuir&lt;/h2>
&lt;p>¡Las contribuciones son bienvenidas! Si va a corregir un problema con el sistema de referencia de coordenadas (CRS), añadir un nuevo modelo espacial o subir datos nuevos, &lt;a href="https://github.com/quarcs-lab/ds4bolivia/pulls" target="_blank" rel="noopener">envíe un Pull Request&lt;/a>.&lt;/p></description></item><item><title>Observatorio de GeoDesarrollo de Camboya</title><link>https://carlos-mendez.org/es/projects/gdo-cambodia/</link><pubDate>Mon, 15 Sep 2025 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/gdo-cambodia/</guid><description>&lt;p>Cómo citar este proyecto:&lt;/p>
&lt;blockquote>
&lt;p>Mendez C., Khoun T., Poortinga A. (2025) GeoDevelopment Observatory of Cambodia.&lt;a href="https://bit.ly/gdo-cambodia" target="_blank" rel="noopener">https://bit.ly/gdo-cambodia&lt;/a>&lt;/p>
&lt;/blockquote>
&lt;p>El Observatorio de GeoDesarrollo (GDO) de Camboya ofrece una plataforma de acceso público para el análisis, el seguimiento y la evaluación del desarrollo regional sostenible. El observatorio integra indicadores ambientales, sociales y económicos —denominados Indicadores de GeoDesarrollo— recopilados a partir de imágenes satelitales, encuestas de campo y registros administrativos. Estos conjuntos de datos multidimensionales se analizan mediante cuadernos computacionales potenciados con IA y aplicaciones web especializadas dentro del marco de Herramientas de GeoDesarrollo. Los análisis técnicos se convierten luego en Perspectivas de GeoDesarrollo, que presentan los datos en formatos accesibles para distintos grupos de usuarios. Las personas investigadoras utilizan la plataforma para realizar análisis empíricos, quienes toman decisiones acceden a ella para el diseño y la implementación de políticas, y la ciudadanía la consulta para comprender los patrones de desarrollo en sus regiones. Este enfoque sistemático facilita la transformación de datos de sostenibilidad complejos en información útil para monitorear el progreso, evaluar intervenciones e informar las políticas de desarrollo regional sostenible.&lt;/p>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe
src="https://www.youtube.com/embed/9CcppQpArWI?si=hod4334TVc72NoHl"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;">
&lt;/iframe>
&lt;/div>
&lt;div style="position: relative; width: 100%; height: 0; padding-top: 56.2500%;
padding-bottom: 0; box-shadow: 0 2px 8px 0 rgba(63,69,81,0.16); margin-top: 1.6em; margin-bottom: 0.9em; overflow: hidden;
border-radius: 8px; will-change: transform;">
&lt;iframe loading="lazy" style="position: absolute; width: 100%; height: 100%; top: 0; left: 0; border: none; padding: 0;margin: 0;"
src="https://www.canva.com/design/DAGye-QAKJY/W0nsfoueC3jXXgojBCFhOQ/view?embed" allowfullscreen="allowfullscreen" allow="fullscreen">
&lt;/iframe>
&lt;/div>
&lt;a href="https:&amp;#x2F;&amp;#x2F;www.canva.com&amp;#x2F;design&amp;#x2F;DAGye-QAKJY&amp;#x2F;W0nsfoueC3jXXgojBCFhOQ&amp;#x2F;view?utm_content=DAGye-QAKJY&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=embeds&amp;amp;utm_source=link" target="_blank" rel="noopener">Diapositivas&lt;/a> por Carlos Mendez
&lt;p>Fuente: &lt;a href="https://bit.ly/gdo-cambodia" target="_blank" rel="noopener">https://bit.ly/gdo-cambodia&lt;/a>&lt;/p>
&lt;p>Contribuya y deje sus comentarios en &lt;a href="https://github.com/gdo-cambodia" target="_blank" rel="noopener">https://github.com/gdo-cambodia&lt;/a>&lt;/p></description></item><item><title>Cuadernos y aplicaciones de ciencia de datos computacional para los estudios del desarrollo</title><link>https://carlos-mendez.org/es/projects/ds4ds/</link><pubDate>Tue, 08 Apr 2025 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/projects/ds4ds/</guid><description>&lt;p>Cómo citar este proyecto:&lt;/p>
&lt;blockquote>
&lt;p>Mendez C. (2025) Computational Data Science Notebooks and Apps for Development Studies. Zenodo &lt;a href="https://doi.org/10.5281/zenodo.15250204" target="_blank" rel="noopener">https://doi.org/10.5281/zenodo.15250204&lt;/a>&lt;/p>
&lt;/blockquote>
&lt;p>Contribuya y deje sus comentarios en &lt;a href="https://github.com/cmg777/ds4ds" target="_blank" rel="noopener">https://github.com/cmg777/ds4ds&lt;/a>&lt;/p>
&lt;h2 id="estadística-y-econometría-básicas">Estadística y econometría básicas&lt;/h2>
&lt;ul>
&lt;li>Mendez C. (2024) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/gapminder_example.ipynb" target="_blank" rel="noopener">Introducción a la ciencia de datos con Python usando Gapminder&lt;/a>&lt;/li>
&lt;li>Mendez C. (2025) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/real_differences_and_relationships.ipynb" target="_blank" rel="noopener">Introducción a las diferencias y relaciones estadísticas con Python&lt;/a>&lt;/li>
&lt;li>Mendez C. (2025) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/statistics_differences_relationships_predictions.ipynb" target="_blank" rel="noopener">La estadística trata de diferencias, relaciones y predicciones&lt;/a>&lt;/li>
&lt;li>Mendez C. (2024) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/descriptive_statistics_and_multi_boundary_mapping.ipynb" target="_blank" rel="noopener">Estadística descriptiva y mapeo multifrontera con Python&lt;/a>&lt;/li>
&lt;li>Mendez C. (2025) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/regressions_to_explore_relationships.ipynb" target="_blank" rel="noopener">Usar regresiones para explorar relaciones con Python&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="crecimiento-y-desarrollo-económico">Crecimiento y desarrollo económico&lt;/h2>
&lt;ul>
&lt;li>Mendez C. (2025) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/introduction_to_growth_equations.ipynb" target="_blank" rel="noopener">Introducción a las ecuaciones de crecimiento con Python&lt;/a>&lt;/li>
&lt;li>Mendez C. &amp;amp; Leiva F. (2023) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/solow_growth_model_python.ipynb" target="_blank" rel="noopener">El modelo de crecimiento de Solow y su predicción de convergencia con Python&lt;/a>&lt;/li>
&lt;li>Mendez C. (2023) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/solow_growth_model_R.ipynb" target="_blank" rel="noopener">El modelo de crecimiento de Solow y su predicción de convergencia con R&lt;/a>&lt;/li>
&lt;li>Mendez C. (2021) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/convergence_clubs_labor_productivity.ipynb" target="_blank" rel="noopener">Clubes de convergencia en la productividad laboral y sus fuentes próximas con R&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="análisis-exploratorio-de-datos">Análisis exploratorio de datos&lt;/h2>
&lt;ul>
&lt;li>Mendez C. (2024) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/esda_municipal_development_bolivia.ipynb" target="_blank" rel="noopener">Análisis exploratorio de datos espaciales del desarrollo municipal en Bolivia con Python&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="inferencia-causal">Inferencia causal&lt;/h2>
&lt;ul>
&lt;li>Mendez C. (2025) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/introduction_to_DAGs_R.ipynb" target="_blank" rel="noopener">Introducción a los grafos acíclicos dirigidos (DAG) con R&lt;/a>&lt;/li>
&lt;li>Mendez C. (2024) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/heterogeneous_treatment_effects_DID_R.ipynb" target="_blank" rel="noopener">Efectos heterogéneos del tratamiento mediante DID en dos etapas con R&lt;/a>&lt;/li>
&lt;li>Mendez C. (2025) &lt;a href="https://cmg777.github.io/open-results/files/synthetic_control_explorer2.html" target="_blank" rel="noopener">Explorador de control sintético: estime contrafactuales con combinaciones ponderadas de unidades de control&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="aprendizaje-automático">Aprendizaje automático&lt;/h2>
&lt;ul>
&lt;li>Mendez C. (2025) &lt;a href="https://colab.research.google.com/github/cmg777/ds4ds/blob/main/introductory_ml_mincer_equation.ipynb" target="_blank" rel="noopener">Aprendizaje automático introductorio para econometría: explorando la ecuación de Mincer en Python&lt;/a>&lt;/li>
&lt;li>Mendez C. (2025) &lt;a href="https://ai.studio/apps/drive/1AOCpYZvP9S58zBq3Z7mESzeUCk04Z8Bg?fullscreenApplet=true" target="_blank" rel="noopener">Una aplicación interactiva para aprender gráficos SHAP con predicciones de XGBoost&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="econometría-espacial">Econometría espacial&lt;/h2>
&lt;ul>
&lt;li>Por anunciar&lt;/li>
&lt;li>Por anunciar&lt;/li>
&lt;/ul>
&lt;h2 id="econometría-bayesiana">Econometría bayesiana&lt;/h2>
&lt;ul>
&lt;li>Por anunciar&lt;/li>
&lt;li>Por anunciar&lt;/li>
&lt;/ul>
&lt;h2 id="ingeniería-de-variables-y-geocomputación">Ingeniería de variables y geocomputación&lt;/h2>
&lt;ul>
&lt;li>Mendez C. (2025) &lt;a href="https://code.earthengine.google.com/b8a4fa3a96056d220bcb31b6a561cb1e" target="_blank" rel="noopener">Dinámica regional del PIB basado en luminosidad con Google Earth Engine&lt;/a>&lt;/li>
&lt;li>Por anunciar&lt;/li>
&lt;/ul></description></item><item><title>Sobre la geografía política y socioeconómica de la violencia: heterogeneidad espacial y efectos de escala en Brasil</title><link>https://carlos-mendez.org/es/publication/20250401-sea/</link><pubDate>Sat, 22 Mar 2025 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/publication/20250401-sea/</guid><description>&lt;p>&lt;strong>🤖 Resumen en pódcast con IA&lt;/strong>&lt;/p>
&lt;iframe width="100%" height="300" scrolling="no" frameborder="no" allow="autoplay" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/2060947180&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true&amp;visual=true">&lt;/iframe>&lt;div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;">&lt;a href="https://soundcloud.com/user-562952877" title="QuaRCS-lab" target="_blank" style="color: #cccccc; text-decoration: none;">QuaRCS-lab&lt;/a> · &lt;a href="https://soundcloud.com/user-562952877/on-the-political-and-socioeconomic-geography-of-violence-spatial-heterogeneity-and-scale-effects-in-brazil" title="On the political and socioeconomic geography of violence: Spatial heterogeneity and scale effects in Brazil" target="_blank" style="color: #cccccc; text-decoration: none;">On the political and socioeconomic geography of violence: Spatial heterogeneity and scale effects in Brazil&lt;/a>&lt;/div>
&lt;hr>
&lt;h3 id="-notebooks-de-replicación">💻 Notebooks de replicación&lt;/h3>
&lt;p>Todos los análisis son totalmente &lt;strong>reproducibles en notebooks de Jupyter basados en la nube&lt;/strong> mediante Google Colab:&lt;/p>
&lt;p>📊 &lt;a href="https://colab.research.google.com/drive/1JmRZNIqa8CPtPlOpcN66GkM-X45f2Lkb?usp=sharing" target="_blank" rel="noopener">1. Estadística descriptiva&lt;/a>&lt;/p>
&lt;p>📈 &lt;a href="https://colab.research.google.com/drive/1B7LHLfO5EWVsW_HAH6xebSmiJWi0_Xtv?usp=sharing" target="_blank" rel="noopener">2. Mínimos cuadrados ordinarios (OLS)&lt;/a>&lt;/p>
&lt;p>🗺️ &lt;a href="https://colab.research.google.com/drive/19COBTQysC1UtsKh4cMxWsDFQm_eU4BBV?usp=sharing" target="_blank" rel="noopener">3. Regresión geográficamente ponderada (GWR)&lt;/a>&lt;/p>
&lt;p>📐 &lt;a href="https://colab.research.google.com/drive/1MO5FluSwc3JnJ3a-oegYkH3NQsEhJH0E?usp=sharing" target="_blank" rel="noopener">4. GWR multiescala (MGWR)&lt;/a>&lt;/p>
&lt;p>🔄 &lt;a href="https://colab.research.google.com/drive/14ZriYHYgyj8OxZUtn3rjoFZnsOrNcc2Q?usp=sharing" target="_blank" rel="noopener">5. Comparación de coeficientes GWR frente a MGWR&lt;/a>&lt;/p>
&lt;hr>
&lt;h3 id="-introducción">🌍 Introducción&lt;/h3>
&lt;ul>
&lt;li>La violencia territorial en Brasil exhibe fuertes patrones espaciales.&lt;/li>
&lt;li>Amplía el trabajo de Ingram y Marchesini da Costa (2019) utilizando MGWR.&lt;/li>
&lt;li>Objetivo: explorar la heterogeneidad espacial y los efectos de escala sobre la violencia letal.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-innovaciones-metodológicas">🧪 Innovaciones metodológicas&lt;/h3>
&lt;ul>
&lt;li>Se usaron &lt;strong>notebooks computacionales basados en la nube&lt;/strong> para una replicación completa y de ciencia abierta.&lt;/li>
&lt;li>Se adoptó la &lt;strong>regresión geográficamente ponderada multiescala (MGWR)&lt;/strong>.&lt;/li>
&lt;li>Se identificaron &lt;strong>conglomerados geográficos de violencia&lt;/strong> persistentes.&lt;/li>
&lt;li>Se aplicó una &lt;strong>corrección por pruebas múltiples&lt;/strong> para garantizar la robustez.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-resumen-de-los-datos">📊 Resumen de los datos&lt;/h3>
&lt;ul>
&lt;li>&lt;strong>Unidad de análisis&lt;/strong>: 5562 municipios (2007-2012)&lt;/li>
&lt;li>&lt;strong>Variable dependiente&lt;/strong>: cambio en la tasa de homicidios (Δ 2011-2012 frente a 2007-2008)&lt;/li>
&lt;/ul>
&lt;p>&lt;strong>Variables políticas&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>Margen de victoria (%)&lt;/li>
&lt;li>Alineación partidaria con el gobernador del estado&lt;/li>
&lt;li>Abstención electoral (%)&lt;/li>
&lt;li>Identificación partidaria del alcalde:
&lt;ul>
&lt;li>&lt;strong>Partido del Movimiento Democrático Brasileño (PMDB)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Partido de la Social Democracia Brasileña (PSDB)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Partido de los Trabajadores (PT)&lt;/strong>&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ul>
&lt;p>&lt;strong>Variables socioeconómicas&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>Densidad de población&lt;/li>
&lt;li>Población masculina joven (%)&lt;/li>
&lt;li>Índice de Gini (desigualdad del ingreso)&lt;/li>
&lt;li>Índice de Desarrollo Humano (IDH)&lt;/li>
&lt;li>Hogares encabezados por madres solteras (%)&lt;/li>
&lt;li>Tasa de empleo de adultos (%)&lt;/li>
&lt;li>Elegibilidad para Bolsa Família (%)&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-marcos-de-modelado">🧭 Marcos de modelado&lt;/h3>
&lt;ul>
&lt;li>&lt;strong>OLS&lt;/strong>: estimaciones de efectos globales.&lt;/li>
&lt;li>&lt;strong>GWR&lt;/strong>: estimaciones de efectos localizados con una única escala espacial.&lt;/li>
&lt;li>&lt;strong>MGWR&lt;/strong>: estimaciones de efectos localizados　con múltiples escalas espaciales.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-resultados-de-ols">🔍 Resultados de OLS&lt;/h3>
&lt;ul>
&lt;li>Alcaldes del &lt;strong>PMDB&lt;/strong> → mayor violencia.&lt;/li>
&lt;li>&lt;strong>PT&lt;/strong> y &lt;strong>PSDB&lt;/strong> → sin efecto consistente.&lt;/li>
&lt;li>Abstención electoral → fuertemente asociada a tasas de homicidio más altas.&lt;/li>
&lt;li>Inesperado: el índice de Gini mostró una correlación negativa.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-resultados-de-gwr-variables-políticas">🗺️ Resultados de GWR: variables políticas&lt;/h3>
&lt;ul>
&lt;li>&lt;strong>PMDB&lt;/strong>: correlación positiva en el nordeste.&lt;/li>
&lt;li>&lt;strong>PT&lt;/strong>: reductor de la violencia en muchas regiones.&lt;/li>
&lt;li>&lt;strong>PSDB&lt;/strong>: efectos mixtos —norte (↑), sur (↓).&lt;/li>
&lt;li>Abstención: incrementadora de la violencia en varias regiones.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-resultados-de-gwr-variables-socioeconómicas">🧮 Resultados de GWR: variables socioeconómicas&lt;/h3>
&lt;ul>
&lt;li>Densidad de población y Bolsa Família → efectos heterogéneos.&lt;/li>
&lt;li>% de población masculina joven y madres solteras → en general, mayor violencia.&lt;/li>
&lt;li>La dirección y la significación del efecto varían espacialmente.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-resultados-de-mgwr-variables-políticas">🗺️ Resultados de MGWR: variables políticas&lt;/h3>
&lt;ul>
&lt;li>El &lt;strong>PMDB&lt;/strong> sigue ↑ la violencia en el nordeste.&lt;/li>
&lt;li>El &lt;strong>PSDB&lt;/strong> ahora solo ↓ la violencia en el sur de Brasil.&lt;/li>
&lt;li>El efecto del &lt;strong>PT&lt;/strong> desaparece en su mayor parte tras las correcciones estadísticas.&lt;/li>
&lt;li>Abstención: consistente con la GWR en algunas regiones.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-resultados-de-mgwr-variables-socioeconómicas">🌆 Resultados de MGWR: variables socioeconómicas&lt;/h3>
&lt;ul>
&lt;li>Bolsa Família: sin impacto significativo.&lt;/li>
&lt;li>% de población masculina joven: significativo en más áreas debido a la gran escala espacial.&lt;/li>
&lt;li>Densidad de población y madres solteras: influencia heterogénea y de pequeña escala.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-mapeo-de-conglomerados-residuales">📌 Mapeo de conglomerados residuales&lt;/h3>
&lt;ul>
&lt;li>Mapeo del intercepto (MGWR): revela &lt;strong>conglomerados inexplicados&lt;/strong>.&lt;/li>
&lt;li>Brasil central: residuos positivos → ¿factores estructurales no observados?&lt;/li>
&lt;li>Sur y centro-este: residuos negativos.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h3 id="-conclusión">🧩 Conclusión&lt;/h3>
&lt;ul>
&lt;li>La MGWR aporta perspectivas espaciales matizadas.&lt;/li>
&lt;li>Confirma la heterogeneidad en los determinantes de la violencia.&lt;/li>
&lt;li>Sugiere la necesidad de intervenciones de política regionales y a la medida.&lt;/li>
&lt;li>Se requiere mayor investigación sobre los conglomerados residuales de violencia.&lt;/li>
&lt;/ul></description></item><item><title>Explorando la actividad económica desde el espacio: un cuaderno de Python para procesar y analizar luces nocturnas satelitales</title><link>https://carlos-mendez.org/es/publication/20240417-region/</link><pubDate>Wed, 17 Apr 2024 00:00:00 +0000</pubDate><guid>https://carlos-mendez.org/es/publication/20240417-region/</guid><description>&lt;center>
&lt;div class="alert alert-note">
&lt;div>
Acceda al cuaderno computacional &lt;a href="https://bit.ly/project2022p" target="_blank" rel="noopener">AQUÍ&lt;/a>.
&lt;/div>
&lt;/div>
&lt;/center>
&lt;div class="alert alert-note">
&lt;div>
Vídeo con IA
(creado con Invideo AI)
&lt;/div>
&lt;/div>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto;">
&lt;iframe style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"
src="https://www.youtube-nocookie.com/embed/srNtOUf_e_w?si=gIkHVwyI1wNayJb8&amp;amp;controls=0"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen>
&lt;/iframe>
&lt;/div>
&lt;div class="alert alert-note">
&lt;div>
Diapositivas
(creadas con Canva PRO)
&lt;/div>
&lt;/div>
&lt;div style="position: relative; width: 100%; height: 0; padding-top: 56.2500%;
padding-bottom: 0; box-shadow: 0 2px 8px 0 rgba(63,69,81,0.16); margin-top: 1.6em; margin-bottom: 0.9em; overflow: hidden;
border-radius: 8px; will-change: transform;">
&lt;iframe loading="lazy" style="position: absolute; width: 100%; height: 100%; top: 0; left: 0; border: none; padding: 0;margin: 0;"
src="https:&amp;#x2F;&amp;#x2F;www.canva.com&amp;#x2F;design&amp;#x2F;DAGCpV2wckk&amp;#x2F;ob078h3EKvMp3owtOp68ow&amp;#x2F;view?embed" allowfullscreen="allowfullscreen" allow="fullscreen">
&lt;/iframe>
&lt;/div>
&lt;a href="https:&amp;#x2F;&amp;#x2F;www.canva.com&amp;#x2F;design&amp;#x2F;DAGCpV2wckk&amp;#x2F;ob078h3EKvMp3owtOp68ow&amp;#x2F;view?utm_content=DAGCpV2wckk&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=embeds&amp;amp;utm_source=link" target="_blank" rel="noopener">Diapositivas&lt;/a> por Carlos Mendez
&lt;div class="alert alert-note">
&lt;div>
Pódcast con IA
(creado con NotebookLM)
&lt;/div>
&lt;/div>
&lt;iframe width="100%" height="300" scrolling="no" frameborder="no" allow="autoplay" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/1939257887%3Fsecret_token%3Ds-oxNNkyMZQig&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true&amp;visual=true">&lt;/iframe>&lt;div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;">&lt;a href="https://soundcloud.com/user-562952877" title="cmg777" target="_blank" style="color: #cccccc; text-decoration: none;">cmg777&lt;/a> · &lt;a href="https://soundcloud.com/user-562952877/mendez-2024-exploring-economic/s-oxNNkyMZQig" title="Mendez 2024 Exploring economic activity from outer space" target="_blank" style="color: #cccccc; text-decoration: none;">Mendez 2024 Exploring economic activity from outer space&lt;/a>&lt;/div></description></item></channel></rss>