MARIO
Input-output analysis, in Python, open source.
MARIO — Multifunctional Analysis of Regions through Input-Output — is the Python package by eNextGen's founders for working with input-output (IOT) and supply-use (SUT) tables. Once parsed, a table becomes a MARIO database that can be inspected, computed, transformed, aggregated, shocked and exported.
Tahavori et al. (2023), Journal of Open Research Software Read the paper

What it supports
IO & SUT parsing
Standard sources such as EXIOBASE, EORA, EUROSTAT, FIGARO, WIOD, OECD, and custom databases from Excel, text, CSV or pandas. Single- and multi-region, monetary and hybrid systems.
On-demand computation
Derived matrices and indicators computed when you need them, without materializing what you don't use. Inspect sets, scenarios and available matrices at any point.
Transform & shock
Aggregation, SUT→IOT conversion, scenario analysis and shocks on the database, with an API built around the real IO workflow.
Export & roundtrip
Export results for roundtrip or downstream analysis. It is the bridge through which nxbase ingests IO tables as governed data.
The IO engine behind our analyses
MARIO is developed openly by eNextGen's founders and freely installable from PyPI. It is the computation engine behind many of our analyses and the strategic bridge to nxbase: MARIO reads and manipulates the tables, nxbase governs and exposes them as versioned data.
- PyPI package: mariopy (import mario)
- Sources: EXIOBASE, EORA, EUROSTAT, FIGARO, WIOD, OECD…
- Full documentation on Read the Docs
- Citable via Zenodo DOI
Quick install:
pip install mariopy
import mario
# Parse a test table or a supported source
db = mario.load_test("IOT")
db.calc_all() # compute the derived matrices
db.get_index("Sector") # inspect the sets
MARIO is built for the real input-output workflow: parse a source, inspect sets and scenarios, compute indicators, transform or shock the database and export the results. Within the eNextGen ecosystem it is the engine nxbase uses to ingest and harmonize IO tables.
Want to try MARIO?
Install the package and follow the tutorials in the documentation.