Skip to main content
pymrio logo

pymrio: Multi-Regional Input-Output Analysis in Python

https://img.shields.io/pypi/v/pymrio.svg https://anaconda.org/conda-forge/pymrio/badges/version.svg https://github.com/IndEcol/pymrio/actions/workflows/tests_and_coverage.yml/badge.svg?branch=master https://coveralls.io/repos/github/IndEcol/pymrio/badge.svg?branch=master Documentation Status https://img.shields.io/badge/License-GPL%20v3-blue.svg https://zenodo.org/badge/21688312.svg

What is it

Pymrio is an open source tool for analysing global environmentally extended multi-regional input-output tables (EE MRIOs). Pymrio aims to provide a high-level abstraction layer for global EE MRIO databases in order to simplify common EE MRIO data tasks. Pymrio includes automatic download functions and parsers for available EE MRIO databases like EXIOBASE, WIOD and EORA26. It automatically checks parsed EE MRIOs for missing data necessary for calculating standard EE MRIO accounts (such as footprint, territorial, impacts embodied in trade) and calculates all missing tables. Various data report and visualization methods help to explore the dataset by comparing the different accounts across countries.

Further functions include:

  • analysis methods to identify where certain impacts occur

  • modifying region/sector classification

  • restructuring extensions

  • export to various formats

  • visualization routines and

  • automated report generation

Where to get it

The full source code is available on Github at: https://github.com/IndEcol/pymrio

Pymrio is registered at PyPI and on the Anaconda Cloud. Install it by:

pip install pymrio --upgrade

or when using conda install it by

conda install -c conda-forge pymrio

or update to the latest version by

conda update -c conda-forge pymrio

The source-code of Pymrio available at the GitHub repo: https://github.com/IndEcol/pymrio

The master branch in that repo is supposed to be ready for use and might be ahead of the official releases. To install directly from the master branch use:

pip install git+https://github.com/IndEcol/pymrio@master

Development installation

To set up your development environment, install uv, then sync the project dependencies, including test and lint requirements:

uv sync --all-extras

See ./CONTRIBUTING.rst for further instructions about contributing to pymrio.

Quickstart

A small test mrio is included in the package.

To use it call

import pymrio
test_mrio = pymrio.load_test()

The test mrio consists of six regions and eight sectors:

print(test_mrio.sectors)
print(test_mrio.regions)
print(test_mrio.extensions)

The test mrio includes tables flow tables and some satellite accounts. To show these:

test_mrio.Z
test_mrio.emissions.F

However, some tables necessary for calculating footprints (like test_mrio.A or test_mrio.emissions.S) are missing. pymrio automatically identifies which tables are missing and calculates them:

test_mrio.calc_all()

Now, all accounts are calculated, including footprints and emissions embodied in trade:

test_mrio.A
test_mrio.emissions.D_cba
test_mrio.emissions.D_exp

To visualize the accounts:

import matplotlib.pyplot as plt
test_mrio.emissions.plot_account('emission_type1')
plt.show()

Everything can be saved with

test_mrio.save_all('some/folder')

See the documentation , tutorials and Stadler 2021 for further examples.

Tutorials

The documentation includes information about how to use pymrio for automatic downloading and parsing of the EE MRIOs EXIOBASE, WIOD, OECD and EORA26 as well as tutorials for the handling, aggregating and analysis of these databases.

Citation

If you use Pymrio in your research, citing the article describing the package (Stadler 2021) is very much appreciated.

For the full bibtex key see CITATION file.

Contributing

Want to contribute? Great! Please check CONTRIBUTING.rst if you want to help to improve Pymrio.

Communication, issues, bugs and enhancements

Please use the issue tracker for documenting bugs, proposing enhancements and all other communication related to pymrio.

You can follow me on twitter to get the latest news about all my open-source and research projects (and occasionally some random retweets).

Metadata

Release files for pymrio 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pymrio 0.7.0
File Size Uploaded Provenance
pymrio-0.7.0.tar.gz 227.1 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pymrio 0.7.0
File Interpreter ABI Platform
pymrio-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 488.3 kB

Release files / pymrio-0.7.0.tar.gz

Download URL pymrio-0.7.0.tar.gz
Size 227.1 kB
Tags Source
SHA-256 checksum
How to use checksums
470e6e7b1e310e78fc8a25748a2e3bb264f22ad1f85fb52b2d6c70b022c7c833
BLAKE2b-256 checksum
How to use checksums
272ff9a592cc9bf5ffdf4b61558f072002f9127b7775b9708602af67f3725881
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / pymrio-0.7.0-py3-none-any.whl

Download URL pymrio-0.7.0-py3-none-any.whl
Size 261.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4f23008364d09eaef2beace6ea20232f102e763977e973442a889fece9296ce6
BLAKE2b-256 checksum
How to use checksums
6aa09e711e8a024c9e723469ccb6b29f297c4a6814f841679893c24b74dd2e0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Security for pymrio 0.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for pymrio-0.7.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page