Hill

class synergy.single.Hill(**kwargs)[source]

Bases: ParametricDoseResponseModel1D

The four-parameter Hill equation

E = E0 + (Emax - E0) * d^h / (C^h + d^h)

The Hill equation is a standard model for single-drug dose-response curves. This is the base model for Hill_2P and Hill_CI.

E(d)[source]

Return the model’s effect(s) at dose(s) d.

Parameters:

d (ArrayLike) – Doses

Return ArrayLike:

Effects at doses d

E_inv(E)[source]

Return the dose(s) required to achieve effect(s) E.

Parameters:

E (ArrayLike) – Effects

Return ArrayLike:

Doses required to achieve effects E

fit(d, E, use_jacobian=True, bootstrap_iterations=0, **kwargs)[source]

Fit the model to data.

Parameters:
  • d (array_like) – Array of doses measured

  • E (array_like) – Array of effects measured at doses d

  • bootstrap_iterations (int, default=0) – Number of bootstrap iterations to perform to estimate confidence intervals. If 0, no bootstrapping is performed.

  • kwargs – kwargs to pass to scipy.optimize.curve_fit()

get_confidence_intervals(confidence_interval=95)

Return the lower bound and upper bound estimate for each parameter, keyed by parameter name.

Parameters:

confidence_interval (float, default=95) – % confidence interval to return. Must be between 0 and 100.

Returns:

Lower and upper bounds for each parameter, keyed by parameter name

Return type:

Dict[str, Tuple[float, float]

get_parameters()

Returns model’s parameters

Return type:

Dict[str, Any]

property is_converged: bool

True if the model has converged to a solution.

property is_fit: bool

True if the model has been fit to data.

property is_specified: bool

True if all parameters are set.

class synergy.single.Hill_2P(E0=1.0, Emax=0.0, **kwargs)[source]

Bases: Hill

The two-parameter Hill equation

E = E0 + (Emax - E0) * d^h / (C^h + d^h)

Mathematically equivalent to the four-parameter Hill equation, but E0 and Emax are held constant (not fit to data).

E(d)

Return the model’s effect(s) at dose(s) d.

Parameters:

d (ArrayLike) – Doses

Return ArrayLike:

Effects at doses d

E_inv(E)

Return the dose(s) required to achieve effect(s) E.

Parameters:

E (ArrayLike) – Effects

Return ArrayLike:

Doses required to achieve effects E

fit(d, E, use_jacobian=True, bootstrap_iterations=0, **kwargs)

Fit the model to data.

Parameters:
  • d (array_like) – Array of doses measured

  • E (array_like) – Array of effects measured at doses d

  • bootstrap_iterations (int, default=0) – Number of bootstrap iterations to perform to estimate confidence intervals. If 0, no bootstrapping is performed.

  • kwargs – kwargs to pass to scipy.optimize.curve_fit()

get_confidence_intervals(confidence_interval=95)

Return the lower bound and upper bound estimate for each parameter, keyed by parameter name.

Parameters:

confidence_interval (float, default=95) – % confidence interval to return. Must be between 0 and 100.

Returns:

Lower and upper bounds for each parameter, keyed by parameter name

Return type:

Dict[str, Tuple[float, float]

get_parameters()

Returns model’s parameters

Return type:

Dict[str, Any]

property is_converged: bool

True if the model has converged to a solution.

property is_fit: bool

True if the model has been fit to data.

property is_specified: bool

True if all parameters are set.

class synergy.single.Hill_CI(**kwargs)[source]

Bases: Hill_2P

Model used to calculate Combination Index synergy.

Mathematically this equivalent two-parameter Hill equation with E0=1 and Emax=0. However, Hill_CI.fit() uses a log-linearization approach to dose-response fitting used by the Combination Index.

E(d)

Return the model’s effect(s) at dose(s) d.

Parameters:

d (ArrayLike) – Doses

Return ArrayLike:

Effects at doses d

E_inv(E)

Return the dose(s) required to achieve effect(s) E.

Parameters:

E (ArrayLike) – Effects

Return ArrayLike:

Doses required to achieve effects E

fit(d, E, use_jacobian=True, bootstrap_iterations=0, **kwargs)

Fit the model to data.

Parameters:
  • d (array_like) – Array of doses measured

  • E (array_like) – Array of effects measured at doses d

  • bootstrap_iterations (int, default=0) – Number of bootstrap iterations to perform to estimate confidence intervals. If 0, no bootstrapping is performed.

  • kwargs – kwargs to pass to scipy.optimize.curve_fit()

get_confidence_intervals(confidence_interval=95)

Return the lower bound and upper bound estimate for each parameter, keyed by parameter name.

Parameters:

confidence_interval (float, default=95) – % confidence interval to return. Must be between 0 and 100.

Returns:

Lower and upper bounds for each parameter, keyed by parameter name

Return type:

Dict[str, Tuple[float, float]

get_parameters()

Returns model’s parameters

Return type:

Dict[str, Any]

property is_converged: bool

True if the model has converged to a solution.

property is_fit: bool

True if the model has been fit to data.

property is_specified: bool

True if all parameters are set.