delicatessen.estimating_equations.pharmacokinetics.ee_emax

ee_emax(theta, dose, response, robust=None, k=None)

Estimating equations for the (hyperbolic) E-max model, or Hill Equation.

The E-max model describes the dose-response relationship as concave monotone defined by three parameters: the zero-dose response, the maximum response (E-max) and the dose producing half maximal effect (ED50). The assumed model is

\[R = \theta_{z} + \frac{(\theta_{m} - \theta{z}) D}{\theta_{50} + D}\]

where \(R\) is the response and \(D\) is the dose. Here, \(\theta_{z}\) is the zero-dose response, \(\theta_{m}\) is the maximum response and \(\theta_{50}\) is the dose with 50% of maximal response. The corresponding estimating equations for this model are

\[\begin{split}\sum_{i=1}^n \begin{bmatrix} R_i - \theta_{z} - \frac{\theta_{m} D_i}{\theta_{50} + D_i} \\ \left( R_i - \theta_{z} - \frac{\theta_{m} D_i}{\theta_{50} + D_i} \right) \times \left( \frac{D_i}{\theta_{50} + D_i} \right) \\ \left( R_i - \theta_{z} - \frac{\theta_{m} D_i}{\theta_{50} + D_i} \right) \times \left( \frac{-\theta_{m} D_i}{\theta_{50} + D_i} \right) \\ \end{bmatrix} = 0\end{split}\]

The first estimating equation is for the zero-dose response, the second estimating equations is for the maximum response and the third estimating equation is for 50% maximal response.

Note

This implementation supports both the E-max model (dose increases response) and the I-max model (dose decreases response). Depending on the relationship observed in the data, set the starting values for the zero dose and maximum response starting values (i.e., E-max has zero < max and I-max has zero > max).

Parameters
  • theta (ndarray, list, vector) – Theta consists of 3 values.

  • dose (ndarray, list, vector) – 1-dimensional vector of n dose values.

  • response (ndarray, list, vector) – 1-dimensional vector of n response values.

  • robust (None, str, optional) – Robust loss function to control the influence of outliers. Default is None, which uses the standard (non-outlier) robust version of the model. For a complete set of options for the outlier-robust functions, see the robust_loss_functions documentation.

  • k (None, int, float, optional) – Tuning or hyperparameter for the chosen outlier-robust function. Notice that the choice of hyperparameter should depend on the chosen loss function.

Returns

Returns a 3-by-n NumPy array evaluated for the input theta.

Return type

array

Examples

Construction of a estimating equations with ee_emax should be done similar to the following

>>> from delicatessen import MEstimator
>>> from delicatessen.data import load_inderjit
>>> from delicatessen.estimating_equations import ee_emax

For demonstration, we use dose-response data from Inderjit et al. (2002), which can be loaded from delicatessen directly. Notice that here the response data is modified to correspond to the descrease in root length (since the E-max model assumes increase dose leads to increased response). This example is purely for illustration and one may not think this is the appopriately model for this context

>>> d = load_inderjit()                   # Loading array of data
>>> response = np.max(d[:, 0]) - d[:, 0]  # Response data
>>> dose = d[:, 1]                        # Dose data

Defining psi, or the stacked estimating equations

>>> def psi(theta):
>>>     return ee_emax(theta=theta, dose=dose, response=response)

This model can be difficult to solve. To make the solving process more stable, we provide starting values for the root-finding process based on the observed data

>>> estr = MEstimator(psi, init=[np.min(response), np.max(response), np.median(dose)])
>>> estr.estimate(solver='lm')

Inspecting the parameter estimates, variance, and confidence intervals

>>> estr.theta
>>> estr.variance
>>> estr.confidence_intervals()

Inspecting the parameter estimates

>>> estr.theta[0]    # Zero-dose response
>>> estr.theta[1]    # Maximum response
>>> estr.theta[2]    # Dose that results in 50% of max response

References

Bonate PL. Pharmacokinetic-Pharmacodynamic Modeling and Simulation 2nd edition. pg 101.

Felmlee MA, Morris ME, & Mager DE. (2012). Mechanism-based pharmacodynamic modeling. Methods Mol Biol, 929, 583–600.

Fomenko I, Durst M, & Balaban D. (2006). Robust regression for high throughput drug screening. Computer Methods and Programs in Biomedicine, 82(1), 31-37.

Lim C, Sen PK, & Peddada SD. (2013). Robust nonlinear regression in applications. Journal of the Indian Society of Agricultural Statistics. Indian Society of Agricultural Statistics, 67(2), 215.

Wagner JG. (1968). Kinetics of pharmacologic response I. Proposed relationships between response and drug concentration in the intact animal and man. Journal of Theoretical Biology, 20(2), 173-201.