Consultor del api del Banco de México y del Instituto Nacional de Estadística y Geografía
Project description
Data Mx
data_mx es una librería construida en Python con la finalidad de consultar datos públicos de México, para el Api del Banco de México (Banxico) y el Instituto Nacional de Estadística y Geografía (INEGI) . Estas dos instituciones publican información de la economía real como financiera.
data_mx esta construida a partir de pandas por lo que las consultas retornadas son pd.Dataframe(), teniendo asi integración con otras librerías como Matplotlib, Seaborn o Statsmodels.
Tabla de contenidos
---
title: Diagrama de Data Mx
---
flowchart LR
A["Data_mx"] --> B["Banxico"]
B --Token del Banco de México --> C["SIE"]
A --> D["INEGI"]
D -- Token del INEGI --> E["Banco de Indicadores
BIE
BISE"]
A--> F["Auxiliar"]
F --> G["rename
group_by_time"]
Donde:
- Banco de México
- SIE: Sistema de Información Económica
- INEGI: Instituto Nacional de Estadistica, Geografia e Informatica
- Otras Funciones
- Rename: Renombra las variables
- Group by time: Agrupa los datos según el año o mes
API INEGI
Puedes obtener un Token en la siguiente URL, mientras que los indicadores los puedes consultar en API, en la misma página se consultan tanto el BIE y BISE.
Banco de Información Económica (BIE)
En el BIE se encuentra información del PIB por el lado de la demanda y de la oferta, Índices de precios, Cuentas nacionales, Tasas de ocupación y desocupación, así como Encuestas periódicas que realiza esta institución como la ENOE, EMOE, EMIM, ENEC, entre otros.
Ejemplo PIB y sectores económicos
Consulta parámetros obligatorios
Indicadores:
- Producto Interno Bruto: 735879
- Actividades primarias: 735882
- Actividades secundarias: 735883
- Actividades terciarias: 735888
from data_mx.inegi import banco_de_indicadores
# Parametros
token= 'tu token'
indbie = '735879,735882,735883,735888'
# Consulta
inegi = banco_de_indicadores(token)
bie1 = inegi.request(var=indbie, bank='BIE')
bie1.head()
| TIME_PERIOD | 735879 | 735882 | 735883 | 735888 | |
|---|---|---|---|---|---|
| 0 | 1980-01-01 | 1.040137e+07 | 419192.590 | 4014172.291 | 5383811.941 |
| 1 | 1980-02-01 | 1.034235e+07 | 386092.639 | 4003454.651 | 5369491.411 |
| 2 | 1980-03-01 | 1.039273e+07 | 424698.389 | 4131481.268 | 5257710.872 |
| 3 | 1980-04-01 | 1.092767e+07 | 412868.415 | 4149062.192 | 5745881.173 |
| 4 | 1981-01-01 | 1.134585e+07 | 438850.326 | 4412239.779 | 5856656.820 |
Consulta no parámetros obligatorios
# Parametros
name = ['pib', 'act_1', 'act_2', 'act_3']
inicio = '2018-04-01'
fin = '2022-01-01'
# Consulta
bie2 = banco_de_indicadores(token).request(var=indbie, bank='BIE', name=name, start = inicio, end = fin)
bie2.head()
| fecha | pib | act_1 | act_2 | act_3 | |
|---|---|---|---|---|---|
| 9 | 2021-01-01 | 2.284084e+07 | 758035.123 | 7265140.515 | 1.360932e+07 |
| 10 | 2021-02-01 | 2.362332e+07 | 872394.447 | 7396306.801 | 1.406373e+07 |
| 11 | 2021-03-01 | 2.320473e+07 | 720485.108 | 7417864.609 | 1.381038e+07 |
| 12 | 2021-04-01 | 2.395044e+07 | 957920.499 | 7449600.892 | 1.427720e+07 |
| 13 | 2022-01-01 | 2.344404e+07 | 762523.258 | 7576903.255 | 1.381633e+07 |
Banco de indicadores (BISE)
En el BISE resume los indicadores más importantes de las encuestas recabadas por el INEGI como, por ejemplo:
- ENIGH (Encuesta de Ingreso y Gasto de los Hogares) el ingreso promedio trimestral por hogar según el decil.
- Censos de población destaca población total, por género o rango de edades.
También hay variables cualitativas de Educación, Economía, Geografía, Gobierno y Salud.
Ejemplo: Población
Indicadores:
- Población total: 1002000001
# Parametros
indbise = '1002000001'
name = ['pop_tot']
# Consulta
bise = inegi.request(var=indbise, bank='BISE', name=name)
bise.tail()
| fecha | pop_tot | |
|---|---|---|
| 10 | 2000-01-01 | 97483412.0 |
| 11 | 2005-01-01 | 103263388.0 |
| 12 | 2010-01-01 | 112336538.0 |
| 13 | 2015-01-01 | 119938473.0 |
| 14 | 2020-01-01 | 126014024.0 |
API Banco de México
Puedes obtener un Token en la siguiente URL, mientras que los indicadores los puedes consultar en API
Sistema de información Económica (SIE)
En el SIE principalmente se puede encontrar información financiera como Tasas de interés, UDIS, Base Monetaria, Tipo de Cambio, Subastas de Valores o Encuestas realizadas por esta institución, así como el índice de precios, PIB o Indicadores laborales que son elaborados por otras instituciones.
Ejemplo: Consulta de la Base Monetaria, Crédito Interno y Activos Internacionales
Indicadores:
- Base Monetaria (BM): SF43703
- Activos Internacionales (AIC): SF43704
- Crédito Interno (CIN): SF43706
### Token
from data_mx.banxico import sie
tokenbm = 'tu token'
# A partir de esta se realiza la consulta
banxico = sie(tokenbm)
# Indicadores
var = 'SF43703,SF43704,SF43706'
# Consulta
bm = banxico.request(var= var)
bm.tail()
| fecha | Crédito Interno Neto | Base Monetaria | Activos Internacionales Netos | |
|---|---|---|---|---|
| 1512 | 2024-12-13 | -1455509.3 | 3223066.4 | 4678575.7 |
| 1513 | 2024-12-20 | -1399500.7 | 3254478.2 | 4653978.9 |
| 1514 | 2024-12-27 | -1403433.5 | 3294743.7 | 4698177.2 |
| 1515 | 2025-01-03 | -1493095.0 | 3304980.1 | 4798075.1 |
| 1516 | 2025-01-10 | -1497493.5 | 3298100.4 | 4795593.9 |
Otras Funciones
Estos son una serie de códigos auxiliares que facilitan el procesamiento de las consultas.
Rename
La función rename cambia los valores de los encabezados de un data frame mediante el index.
### Libreria
from data_mx.data_format import rename
### Renombrar variables
names = ['fecha','BM', 'CIN', 'AIC']
bm = rename(bm, names)
bm.head()
| fecha | BM | CIN | AIC | |
|---|---|---|---|---|
| 0 | 1995-12-29 | -264.4 | 67073.1 | 66808.6 |
| 1 | 1996-01-05 | 7304.2 | 56069.6 | 63373.8 |
| 2 | 1996-01-12 | 10199.0 | 52025.7 | 62224.7 |
| 3 | 1996-01-19 | 8593.1 | 51371.0 | 59964.1 |
| 4 | 1996-01-26 | 8360.1 | 49270.0 | 57630.1 |
Group_by_time
La función group_by_time() es un fork de la función pandas.DataFrame.groupby(), está únicamente funciona con consultas realizadas con esta librería. La finalidad de esta función es agrupar los datos según el mes o año.
### Libreria
from data_mx.data_format import group_by_time
### Base Monetaria por meses
bm_m = group_by_time(bm, False, 'mean')
bm_m.tail()
| fecha | BM | CIN | AIC | |
|---|---|---|---|---|
| 345 | 2024-09-01 | 4525193.625 | -1453882.950 | 3071310.675 |
| 346 | 2024-10-01 | 4511781.675 | -1445313.150 | 3066468.525 |
| 347 | 2024-11-01 | 4664126.300 | -1537982.600 | 3126143.700 |
| 348 | 2024-12-01 | 4683622.925 | -1441827.175 | 3241795.750 |
| 349 | 2025-01-01 | 4796834.500 | -1495294.250 | 3301540.250 |
Nota: Esta librería no asociada con el Banco de México o el Instituto Nacional de Estadística y Geografía.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file datos_mx-1.0-py3-none-any.whl.
File metadata
- Download URL: datos_mx-1.0-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1cc7ee80bfbe7051e6b1075ae9a5d3504bff5b02dfe4eeeb8459ef9d9609384b
|
|
| MD5 |
f9117efb887524c89c99a3322bcbb550
|
|
| BLAKE2b-256 |
2b1a9f71598637c8d61dea92bee191e0536ac674511ae3571b45765ba0af22ff
|