This repository describes PEtab --- a data format for specifying parameter estimation problems in systems biology, provides a Python library for easy access and validation of PEtab files. See doc/documentation_data_format.md for more info.
PEtab is built around SBML and based on tab-separated values (TSV) files. It is meant as a standardized way to provide information for parameter estimation which is out of the current scope of SBML. This includes for example:
-
Specifying and linking measurements to models
-
Defining model outputs
-
Specifying noise models
-
-
Specifying parameter bounds for optimization
-
Specifying multiple simulation condition with potentially shared parameters
Where PEtab is used / supported:
-
Within the systems biology optimization benchmark problem collection
If your project or tool is using PEtab, and you would like to have it listed here, please let us know.
If you would like to use PEtab yourself, please have a look at doc/documentation_data_format.md or at the example models provided in the benchmark problem collection.
To convert your existing parameter estimation problem to the PEtab format, you will have to:
-
Specify your model in SBML
-
Set up model outputs and noise model using
AssignmentRule
s as described in the PEtab documentation -
Create a condition table, if appropriate
-
Create a table of measurements
-
Create a parameter table
If you are using Python, some handy functions of the PEtab library can help
you with that. This include also a PEtab validator called petablint.py
which
you can use to check if your files adhere to the PEtab standard. If you have
further questions regarding PEtab, feel free to post an
issue at our github repository.
PEtab comes with a Python package for creating, checking, and working with PEtab files. This library is available on pypi and the easiest way to install it is running
pip3 install petab
It will require Python3.6 to run.
When setting up a new parameter estimation problem, the most useful tools will be:
-
The PEtab validator
bin/petablint.py
-
petab.core.create_parameter_df
to create the parameter table, once you have set up the model, condition table and measurement table
We are aware of the fact that PEtab may not serve everybody's needs. If you have a suggestion of how to extend PEtab, feel free to post an issue at our github repository.