Skip to main content

Un cliente API para la extraccion, consulta y analisis de la base de datos BCRPData del Banco Central de Reserva del Peru (BCRP)

Project description

bcrpy

Un cliente API para la extraccion, consulta y analisis de la base de datos BCRPData del Banco Central de Reserva del Peru (BCRP) escrito para Python. Este cliente es un wrapper de la API para Desarrolladores del BCRP.

Installation and Local Usage

To import this repository to your local environment and access it (on terminal):

virtualenv venv
source venv/bin/activate
pip install bcrpy

Examples

[In]

import bcrpy

banc = bcrpy.Marco()			# cargar objeto

banc.get_metadata()			# obtener todos los metadatos del BCRPData 
print(banc.metadata)		# imprimir metadatos obtenidos

[Out]

Código de serie Categoría de serie ... Memo Unnamed: 13
0 PN00001MM Sociedades creadoras de depósito ... NaN
1 PN00002MM Sociedades creadoras de depósito ... NaN
2 PN00003MM Sociedades creadoras de depósito ... NaN
3 PN00004MM Sociedades creadoras de depósito ... NaN
4 PN00005MM Sociedades creadoras de depósito ... NaN
... ... ... ...
14853 PD39791AM Expectativas Empresariales ... NaN
14854 PD39792AM Expectativas Empresariales ... NaN
14855 PD39793AM Expectativas Empresariales ... NaN
14856 PD39794AM Expectativas Empresariales ... NaN
14857 PD39795AM Expectativas Empresariales ... NaN

[In]

import bcrpy

banc = bcrpy.Marco()			# cargar objeto

#hacer una consulta del codigo de serie predeterminado de este metodo (actualmente 'PD39793AM') con el API del BCRPData
banc.query()			

#hacer otra consulta, pero para el codigo de serie 'PN00015MM'
banc.query('PN00015MM')		

[Out]

running query for PD39793AM...

PD39793AM es indice 14855 en metadatos

{
        "Código de serie": "PD39793AM",
        "Categoría de serie": "Expectativas Empresariales",
        "Grupo de serie": "Expectativas empresariales sectoriales",
        "Nombre de serie": "Índice de expectativas del sector a 12 meses - Servicios",
        "Fuente": NaN,
        "Frecuencia": "Mensual",
        "Fecha de creación": "2023-02-28",
        "Grupo de publicación": "Expectativas macroeconómicas y de ambiente empresarial",
        "Área que publica": "Departamento de Indicadores de la Actividad Economía",
        "Fecha de actualización": "2023-02-28",
        "Fecha de inicio": "Abr-2010",
        "Fecha de fin": "Sep-2022",
        "Memo": NaN
}

running query for PN00015MM...

PN00015MM es indice 14 en metadatos

{
        "Código de serie": "PN00015MM",
        "Categoría de serie": "Sociedades creadoras de depósito",
        "Grupo de serie": "Cuentas monetarias de las sociedades creadoras de depósito",
        "Nombre de serie": "Activos Internos Netos - Crédito al Sector Privado - ME (millones US$)",
        "Fuente": "BCRP",
        "Frecuencia": "Mensual",
        "Fecha de creación": "2022-03-24",
        "Grupo de publicación": "Sistema financiero y empresas bancarias y expectativas sobre condiciones crediticias",
        "Área que publica": "Departamento de Estadísticas Monetarias",
        "Fecha de actualización": "2023-02-24",
        "Fecha de inicio": "Abr-1992",
        "Fecha de fin": "Sep-2022",
        "Memo": NaN
}

[In]

import bcrpy
import matplotlib.pyplot as plt 

banc = bcrpy.Marco()	#cargar objeto

#escoger los inputs de los datos que se desean extraer del BCRPData (otros datos como banc.idioma (='ing') son predeterminados, pero tambien se pueden cambiar)
banc.codigos = ['PN01288PM','PN01289PM','PN00015MM']
banc.fechaini = '2020-1'
banc.fechafin = '2023-1'

banc.state_inputs()			# mostrar el estado actual de los inputs escogidos 

df = banc.GET('GET.csv')	# obtener informacion de los inputs escogidos (arriba) con el API del BCRP y guardarlas como un archivo con el nombre 'GET.csv'

#graficos (plots)
for name in df.columns:
    plt.figure(figsize=(9, 4))
    banc.plot(df[name],name,'plot')
    plt.show()
plt.show()

[Out]

running current inputs state...

    self.metadata = \<vacio>
    self.codigos = ['PN01288PM', 'PN01289PM', 'PN00015MM']
    self.formato = json
    self.fechaini = 2020-1
    self.fechafin = 2023-1
    self.idioma = ing

https://estadisticas.bcrp.gob.pe/estadisticas/series/api/PN01288PM-PN01289PM-PN00015MM/json/2020-1/2023-1/ing

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

bcrpy-0.1.0.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

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

bcrpy-0.1.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file bcrpy-0.1.0.tar.gz.

File metadata

  • Download URL: bcrpy-0.1.0.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.8.3 Linux/5.19.0-32-generic

File hashes

Hashes for bcrpy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 56b698e32e49bb4325402610537ddcf6b6368d196cb1d7a12f049479bdbca613
MD5 cffe22b58e1c680b4059a965aa5830cc
BLAKE2b-256 0b2da43edac5b57ef5e4df25a44dac5d5574bdf37a7272f9734dcde5fed73ced

See more details on using hashes here.

File details

Details for the file bcrpy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: bcrpy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.8.3 Linux/5.19.0-32-generic

File hashes

Hashes for bcrpy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8dece5b5f80f840fd73081fab2cd7fabe9bb6960c9081820c13e9f00208c9194
MD5 0afe3366dd371f4c8002ae8ef985d907
BLAKE2b-256 bc8be291db6deef55fa6b7a91102b943bf33f5d577cd1435ef0ddd4c27c40764

See more details on using hashes here.

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