petab.parameters

Functions operating on the PEtab parameter table

Functions

create_parameter_df(sbml_model, …) Create a new PEtab parameter table
get_optimization_parameters(parameter_df) Get list of optimization parameter ids from parameter dataframe.
get_parameter_df(parameter_file_name) Read the provided parameter file into a pandas.Dataframe.
get_priors_from_df(parameter_df, mode) Create list with information about the parameter priors
get_required_parameters_for_parameter_table(…) Get set of parameters which need to go into the parameter table
get_valid_parameters_for_parameter_table(…) Get set of parameters which may be present inside the parameter table
map_scale(parameters, scale_strs) As scale(), but for Iterables
parameter_id_is_valid(parameter_id) Check whether parameter_id is a valid PEtab parameter ID
scale(parameter, scale_str) Scale parameter according to scale_str
write_parameter_df(df, filename) Write PEtab parameter table
petab.parameters.create_parameter_df(sbml_model: libsbml.Model, condition_df: pandas.core.frame.DataFrame, measurement_df: pandas.core.frame.DataFrame, include_optional: bool = False, parameter_scale: str = 'log10', lower_bound: Iterable[T_co] = None, upper_bound: Iterable[T_co] = None) → pandas.core.frame.DataFrame

Create a new PEtab parameter table

All table entries can be provided as string or list-like with length matching the number of parameters

Parameters:
  • sbml_model – SBML Model
  • condition_df – PEtab condition DataFrame
  • measurement_df – PEtab measurement DataFrame
  • include_optional – By default this only returns parameters that are required to be present in the parameter table. If set to True, this returns all parameters that are allowed to be present in the parameter table (i.e. also including parameters specified in the SBML model).
  • parameter_scale – parameter scaling
  • lower_bound – lower bound for parameter value
  • upper_bound – upper bound for parameter value
Returns:

The created parameter DataFrame

petab.parameters.get_optimization_parameters(parameter_df: pandas.core.frame.DataFrame) → List[str]

Get list of optimization parameter ids from parameter dataframe.

Parameters:parameter_df – PEtab parameter DataFrame
Returns:List of parameter IDs in the parameter table
petab.parameters.get_parameter_df(parameter_file_name: str) → pandas.core.frame.DataFrame

Read the provided parameter file into a pandas.Dataframe.

Parameters:parameter_file_name – Name of the file to read from.
Returns:Parameter DataFrame
petab.parameters.get_priors_from_df(parameter_df: pandas.core.frame.DataFrame, mode: str) → List[Tuple]

Create list with information about the parameter priors

Parameters:
  • parameter_df – PEtab parameter table
  • mode – ‘initialization’ or ‘objective’
Returns:

List with prior information.

petab.parameters.get_required_parameters_for_parameter_table(sbml_model: libsbml.Model, condition_df: pandas.core.frame.DataFrame, measurement_df: pandas.core.frame.DataFrame) → Set[str]

Get set of parameters which need to go into the parameter table

Parameters:
  • sbml_model – PEtab SBML model
  • condition_df – PEtab condition table
  • measurement_df – PEtab measurement table
Returns:

Set of parameter IDs which PEtab requires to be present in the parameter table. That is all {observable,noise}Parameters from the measurement table as well as all parametric condition table overrides that are not defined in the SBML model.

petab.parameters.get_valid_parameters_for_parameter_table(sbml_model: libsbml.Model, condition_df: pandas.core.frame.DataFrame, measurement_df: pandas.core.frame.DataFrame) → Set[str]

Get set of parameters which may be present inside the parameter table

Parameters:
  • sbml_model – PEtab SBML model
  • condition_df – PEtab condition table
  • measurement_df – PEtab measurement table
Returns:

Set of parameter IDs which PEtab allows to be present in the parameter table.

petab.parameters.map_scale(parameters: Iterable[numbers.Number], scale_strs: Iterable[str]) → Iterable[numbers.Number]

As scale(), but for Iterables

petab.parameters.parameter_id_is_valid(parameter_id: str) → bool

Check whether parameter_id is a valid PEtab parameter ID

This should pretty much correspond to what is allowed for SBML identifiers.

TODO(#179) improve checking

Parameters:parameter_id – Parameter ID to validate
Returns:True if valid, False otherwise
petab.parameters.scale(parameter: numbers.Number, scale_str: str) → numbers.Number

Scale parameter according to scale_str

Parameters:
  • parameter – Parameter to be scaled
  • scale_str – One of ‘lin’ (synonymous with ‘’), ‘log’, ‘log10’
petab.parameters.write_parameter_df(df: pandas.core.frame.DataFrame, filename: str) → None

Write PEtab parameter table

Parameters:
  • df – PEtab parameter table
  • filename – Destination file name