Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- """
- API Ministerio de Hacienda
- Autor: Lionel Modi
- """
- from datetime import datetime as _dt
- import requests as _req
- import pandas as _pd
- def get_data(ids, **params):
- """
- Baja series del API del Ministerio de Hacienda
- Parámetros:
- ids : list con ids a solicitar
- params : Parámetros para configurar el API
- Resultado:
- pandas.DataFrame o pandas.Series
- Uso:
- >>> get_data(['168.1_T_CAMBIOR_D_0_0_26'], start_date='2018-07')
- """
- params['ids'] = ",".join(ids)
- params['format'] = 'json'
- params['metadata'] = 'full'
- raw_data = _req.get(r'https://apis.datos.gob.ar/series/api/series',
- params=params).json()
- cols = [r['field']['title'] for r in raw_data['meta'][1:]]
- dts, data = map(list, zip(*[(_dt.strptime(f, "%Y-%m-%d"), d) for
- f, *d in raw_data['data']]))
- output = _pd.DataFrame.from_records(data=data, index=dts, columns=cols)
- return output.squeeze()
- if __name__ == '__main__':
- # Ejemplo 'Tipo de Cambio BNA Vendedor'
- TC = get_data(['168.1_T_CAMBIOR_D_0_0_26'], start_date='2018-01',
- limit=1000)
- # Ejemplo 'IPC Nivel General. Base abr 2016. Mensual'
- INF = get_data(['101.1_I2NG_2016_M_22:percent_change_a_year_ago'])
- # Ejemplo 'Reservas Intenacionales BCRA'
- RES = get_data(['92.1_RID_0_0_32'], start_date='2015-01')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement