Skip to main content

Cliente Python oficial para la API del Observatorio Datos México

Project description

datos-mexico-py

PyPI version Python versions License: MIT Tests Docs

Cliente Python oficial para la API del Observatorio Datos México.

📖 Documentación completa: docs.datosmexico.org

Acceso programático a microdatos públicos mexicanos curados, validados al peso contra fuentes oficiales, y documentados con sus salvedades metodológicas.

Datasets disponibles

  • CDMX servidores públicos: 246,831 servidores · 75 sectores · padrón vigente del Gobierno de la Ciudad de México
  • CONSAR / SAR: serie histórica 1998–2025 · 11 AFOREs · recursos administrados, composición, comisiones, traspasos
  • ENIGH 2024 Nueva Serie: 91,414 hogares en muestra · 38.8M expandidos · ingresos, gastos, demografía
  • ENOE — Mercado laboral INEGI: 101.5M microdatos · 76 mil indicadores agregados · cobertura 2005T1–2025T1 · nacional + 32 entidades federativas

Próximamente: tipos comparativos cross-dataset.

Instalación

pip install datos-mexico

Para ejecutar los notebooks de ejemplo:

pip install datos-mexico[examples]

Requiere Python 3.10 o superior.

Uso rápido

from datos_mexico import DatosMexico

client = DatosMexico()

# CDMX servidores públicos
stats = client.cdmx.dashboard_stats()
print(f"{stats['totalServidores']:,} servidores públicos")

# SAR composición
sar = client.consar.recursos_totales()
print(f"Última fecha: {sar['fecha_max']}")

# ENIGH hogares
hogares = client.enigh.hogares_summary()
print(f"{hogares['n_hogares_expandido']:,} hogares estimados")

# ENOE — Top 5 estados con mayor desempleo (2025T1)
top5 = client.enoe.ranking(periodo="2025T1", indicador="tasa_desocupacion", limit=5)
for e in top5.ranking:
    print(f"  {e.rank}. {e.entidad_nombre}: {e.valor:.2f}%")

ENOE — mercado laboral mexicano

El módulo enoe expone los 101.5M microdatos y 76 mil indicadores agregados de la Encuesta Nacional de Ocupación y Empleo (INEGI, 2005T1–2025T1).

from datos_mexico import DatosMexico

with DatosMexico() as client:
    # Catálogo de los 13 indicadores agregados disponibles
    catalogo = client.enoe.indicadores()
    for ind in catalogo.indicadores[:3]:
        print(f"  {ind.slug:30s}  {ind.nombre}")

    # Serie nacional histórica de la tasa de desocupación
    serie = client.enoe.serie_nacional(indicador="tasa_desocupacion")
    print(f"Cobertura: {serie.cobertura.n_observaciones} trimestres")
    print(f"Último punto: {serie.datos[-1].periodo} = {serie.datos[-1].valor:.2f}%")

    # Microdatos de CDMX como DataFrame (requiere pandas)
    df = client.enoe.microdatos_to_pandas(
        "sdem", periodo="2025T1", entidad_clave="09", limit=500
    )
    print(f"Muestra CDMX 2025T1: {len(df)} filas × {len(df.columns)} cols")

    # Iterar sin cargar a memoria
    for row in client.enoe.microdatos_iter(
        "sdem", periodo="2025T1", entidad_clave="09", sex=2, eda_min=18
    ):
        # procesar fila a fila
        ...

Cada response incluye una lista tipada de caveats con las salvedades metodológicas relevantes: cambio de marco muestral en 2020T3, redefinición del TCCO en 2020T1, gap documental ETOE en 2020T2, re-cálculo del dominio 15+ en la etapa clásica pre-2020.

Examples

El directorio examples/ contiene 5 notebooks Jupyter ejecutables que muestran flujos típicos del SDK con datos reales contra https://api.datos-itam.org:

Para ejecutarlos:

pip install datos-mexico[examples]
jupyter notebook examples/

Cada notebook se renderiza en GitHub con outputs visibles (gráficas y cifras reales).

Documentación

Documentación profesional en docs.datosmexico.org:

Otros recursos:

Salvedades metodológicas

El cliente reproduce los datos tal como los publica la API del observatorio. La API a su vez reprocesa fuentes oficiales (INEGI, CONSAR, Datos Abiertos CDMX) sin alterar microdatos. Cada endpoint documenta sus límites de cobertura, fechas de corte, y validaciones contra fuente primaria.

Para precisiones técnicas profundas sobre cualquier dataset, consultar las fuentes primarias enlazadas en docs/sources.md.

Cómo citar

Si usas este cliente en una investigación o publicación académica, por favor cita el proyecto:

@software{datos_mexico_py,
  author = {{Equipo de Datos México}},
  title = {datos-mexico-py: Cliente Python para la API del Observatorio Datos México},
  year = {2026},
  publisher = {Datos México},
  url = {https://github.com/datos-mexico/datos-mexico-py},
}

GitHub también ofrece exportación BibTeX/APA automática desde el botón "Cite this repository" en la página del repo.

Contribuir

Ver docs/contributing.md. Pull requests, issues, y reportes de errores en datos son bienvenidos.

Licencia

MIT — ver LICENSE.

Contacto


Datos México es un observatorio independiente formado por estudiantes y egresados del Instituto Tecnológico Autónomo de México (ITAM).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datos_mexico-0.2.0.tar.gz (48.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datos_mexico-0.2.0-py3-none-any.whl (61.0 kB view details)

Uploaded Python 3

File details

Details for the file datos_mexico-0.2.0.tar.gz.

File metadata

  • Download URL: datos_mexico-0.2.0.tar.gz
  • Upload date:
  • Size: 48.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for datos_mexico-0.2.0.tar.gz
Algorithm Hash digest
SHA256 131b5f69671110272dc1f543f952207874629c6177b5c51e6de2b01f259aafac
MD5 77d36578b6a48c81359dc6d120c4f401
BLAKE2b-256 7775de6cde195570039941f8f69cb870a7ec6c633232e7342e62400501b5969d

See more details on using hashes here.

Provenance

The following attestation bundles were made for datos_mexico-0.2.0.tar.gz:

Publisher: publish.yml on Datos-Mexico/datos-mexico-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file datos_mexico-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: datos_mexico-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 61.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for datos_mexico-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 02e5e6c5828c6cd134c07863ed734e0f442a9d45f204f227599959cb5c3af587
MD5 c5ac22f434df578b6d3c720755b3cbd6
BLAKE2b-256 280d66170b31d22f54831d79ed3c0ae1f637aaf4dab04e21451af1902690b954

See more details on using hashes here.

Provenance

The following attestation bundles were made for datos_mexico-0.2.0-py3-none-any.whl:

Publisher: publish.yml on Datos-Mexico/datos-mexico-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page