petab.parameters

Functions operating on the PEtab parameter table

Functions

create_parameter_df(sbml_model, …) Create a new PEtab parameter table
get_optimization_parameter_scaling(parameter_df) Get Dictionary with optimization parameter IDs mapped to parameter scaling strings.
get_optimization_parameters(parameter_df) Get list of optimization parameter IDs from parameter table.
get_parameter_df(parameter_file, List[str], …) 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
normalize_parameter_df(parameter_df) Add missing columns and fill in default values.
scale(parameter, scale_str) Scale parameter according to scale_str
unscale(parameter, scale_str) Unscale 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, observable_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_parameter_scaling(parameter_df: pandas.core.frame.DataFrame) → Dict[str, str]

Get Dictionary with optimization parameter IDs mapped to parameter scaling strings.

Parameters:parameter_df – PEtab parameter DataFrame
Returns:Dictionary with optimization parameter IDs mapped to parameter scaling strings.
petab.parameters.get_optimization_parameters(parameter_df: pandas.core.frame.DataFrame) → List[str]

Get list of optimization parameter IDs from parameter table.

Parameters:parameter_df – PEtab parameter DataFrame
Returns:List of IDs of parameters selected for optimization.
petab.parameters.get_parameter_df(parameter_file: Union[str, List[str], pandas.core.frame.DataFrame, None]) → pandas.core.frame.DataFrame

Read the provided parameter file into a pandas.Dataframe.

Parameters:parameter_file – Name of the file to read from or pandas.Dataframe.
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, observable_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
  • observable_df – PEtab observable 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, observable_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
  • observable_df – PEtab observable 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.normalize_parameter_df(parameter_df: pandas.core.frame.DataFrame) → pandas.core.frame.DataFrame

Add missing columns and fill in default values.

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’.
Returns:

The scaled parameter.

Return type:

parameter

petab.parameters.unscale(parameter: numbers.Number, scale_str: str) → numbers.Number

Unscale parameter according to scale_str

Parameters:
  • parameter – Parameter to be unscaled.
  • scale_str – One of ‘lin’ (synonymous with ‘’), ‘log’, ‘log10’.
Returns:

The unscaled parameter.

Return type:

parameter

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