Statistical Data and Metadata eXchange (SDMX) in Python

Statistical Data and Metadata eXchange (SDMX) in Python#

sdmx (‘sdmx1’ on PyPI) is a Python implementation of the SDMX 2.1 (ISO 17369:2013) and 3.0 standards for Statistical Data and Metadata eXchange. The SDMX standards are developed and used by national statistical agencies, central banks, and international organisations.

sdmx can be used to:

  • Explore and retrieve data available from SDMX-REST web services operated by providers including the World Bank, International Monetary Fund, Eurostat, OECD, and United Nations;

  • Read and write data and metadata in file formats including SDMX-ML (XML), SDMX-JSON, and SDMX-CSV;

  • Convert data and metadata into pandas objects, for use with the analysis, plotting, and other tools in the Python data science ecosystem;

  • Apply the SDMX information model (IM) to structure and publish your own data;

…and much more.

Get started#

The SDMX standards are designed to be flexible enough to accommodate nearly any data. To do this, they include a large number of abstract concepts for describing data, metadata, and their structure and relationships. These are collectively called the information model (IM) of SDMX.

The documentation you are reading does not (and could not) repeat full descriptions of the IM or other parts of the SDMX standards. Instead, it focuses on the precise, Pythonic, and useful implementation that this sdmx package aims to provide.

Detailed knowledge of the IM is not needed to use sdmx; see a usage example in only 10 lines of code or a longer, narrative walkthrough. To learn about SDMX in more detail, use the list of resources and references, or read the API documentation in detail.

sdmx user guide#

Contributing and getting help#

  • Ask usage questions (“How do I?”) on Stack Overflow using the tags [sdmx] [python].

  • Report bugs, suggest features, or view the source code on GitHub.

  • The older sdmx-python Google Group may have answers for some questions.