A python package for automating input-output (IO) calculations, models,visualization and scenario and supply-chain analysis
Project description
MARIO
MARIO stands for Multifunctional Analysis of Regions through Input-Output. It is a Python package for working with Input-Output Tables (IOT) and Supply and Use Tables (SUT). Once parsed, a table becomes a MARIO database that can be inspected, computed, transformed, aggregated, shocked, and exported.
Documentation is available on Read the Docs.
What MARIO Supports
MARIO is designed around a practical IO workflow:
parse a database from supported sources or load a packaged test table;
inspect sets, scenarios, and available matrices;
compute derived matrices and indicators on demand;
transform, aggregate, or shock the database;
export the results for roundtrip or downstream analysis.
The current documentation covers both standard parsers and custom database ingestion. Supported workflows include:
single-region and multi-region systems;
monetary and hybrid tables where the parser supports them;
standard sources such as EXIOBASE, EORA, EUROSTAT, FIGARO, WIOD, OECD, and more;
custom databases from Excel, text, CSV, and pandas-based inputs;
aggregation, SUT-to-IOT conversion, scenario analysis, and exports.
Installation
The package name on PyPI is mariopy, while the import name is mario.
Preferably, create a clean Python environment first:
conda create -n mario python=3.10
conda activate mario
Install from PyPI:
pip install mariopy
Install with Parquet support:
pip install "mariopy[parquet]"
Install from source:
git clone https://github.com/it-is-me-mario/MARIO.git
cd MARIO
pip install -e .
Quickstart
A minimal test database is bundled with MARIO:
import mario
db = mario.load_test("IOT")
print(db)
print(db.get_index("Region"))
db.calc_all()
db.to_excel(path="output_folder")
For SUT workflows:
import mario
sut = mario.load_test("SUT")
iot = sut.to_iot(method="B")
Documentation Map
The published documentation is organized into a few main sections:
Setup for installation and first checks;
Concepts for MARIO terminology and conventions;
User guide for parsers, inspection, transformations, custom databases, and exports;
API reference for method-level documentation;
Publications for the software paper and related research.
Citation
Citation guidance and the up-to-date list of publications using MARIO are maintained in the Research section of the documentation.
License
MARIO is distributed under the GNU General Public License v3.0.
Supporting institutions
MARIO grows across two complementary settings.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mariopy-1.0.1.tar.gz.
File metadata
- Download URL: mariopy-1.0.1.tar.gz
- Upload date:
- Size: 39.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0387d5f5dba605fa169acfa30738985a64471d48c1dfb394052f2448c1dbb736
|
|
| MD5 |
56fcbcf25ed0b6451fa2600981187224
|
|
| BLAKE2b-256 |
ae968c2817e93ef4128dbe681bb41342a84e955b487953ab9b5569971396d144
|
File details
Details for the file mariopy-1.0.1-py3-none-any.whl.
File metadata
- Download URL: mariopy-1.0.1-py3-none-any.whl
- Upload date:
- Size: 866.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d74af76099ed9220671806ff8ce0e2ca530277c0d280737510f7871abc30be4
|
|
| MD5 |
f2df475b206f12908cac5e0fb2dd6196
|
|
| BLAKE2b-256 |
2a810a8efc80e8ef882ce4e99f2d838dc2207e4337ffa1b4ecf6c759746c5678
|