Welcome to the SDQC library documentation!

System Dynamics Quality Check (SDQC): run quality checks over Vensim models input data files.

made-with-sphinx-doc docs PyPI license PyPI package PyPI status PyPI pyversions pipeline coverage

System Dynamics models are generally data intensive. Large datasets are difficult to maintain and are commonly plagued with issues that affect their quality. When low quality data is fed to SD models, the issues propagate to their outputs.

This library facilitates the task of loading input data to System Dynamic models from external files (spreadsheets), running common data quality checks on it (e.g. outlier detection, missing values, etc.) and generating data quality reports.

This project was originally thought as an extension to the PySD library, and in fact, it uses it to load the model input data by parsing either the Vensim model file (.mdl) or the Python translation (using PySD). Additionally, the library also allows to load data from external data files by reading the location of each dataset from a user defined dictionary.

Vensim is a well known platform to build SD models. However, its flexibility when it comes to loading external data also comes at a price. Indeed, when defining calls to external data from Vensim, it is surprisingly easy to introduce errors that generally go unnoticed by the software and that may lead to unexpected model results. If addition, the root of such unexpected results is generally painful to track down. Accordingly, this library should be of particular interest to Vensim users who work on large models and want to make sure that what they feed to their model is what they expect.

The code for SDQC is available here. If you find a bug, or if you wish to requuest a new feature, please use GitLab’s issue tracker. For contributions see the Development section.


Aditional Resources

PySD docs

PySD documentation is available at: http://pysd.readthedocs.org/


This library was originally developed for H2020 LOCOMOTION project by @eneko.martin.martinez at Centre de Recerca Ecològica i Aplicacions Forestals (CREAF).

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 821105.