R: Michaelis-Menten Model

micmen {VGAM} | R Documentation

## Michaelis-Menten Model

### Description

Fits a Michaelis-Menten nonlinear regression model.

### Usage

    micmen(rpar = 0.001, divisor = 10, init1 = NULL, init2 = NULL,
           imethod = 1, oim = TRUE,    link1 = "identitylink", link2 = "identitylink",
           firstDeriv = c("nsimEIM", "rpar"), probs.x = c(0.15, 0.85),
           nsimEIM = 500, dispersion = 0, zero = NULL)

### Arguments

`rpar` | Numeric. Initial positive ridge parameter. This is used to create positive-definite weight matrices.
`divisor` | Numerical. The divisor used to divide the ridge parameter at each iteration until it is very small but still positive. The value of `divisor` should be greater than one.
`init1, init2` | Numerical. Optional initial value for the first and second parameters, respectively. The default is to use a self-starting value.
`link1, link2` | Parameter link function applied to the first and second parameters, respectively. See `Links` for more choices.
`dispersion` | Numerical. Dispersion parameter.
`firstDeriv` | Character. Algorithm for computing the first derivatives and working weights. The first is the default.
`imethod, probs.x` | See `CommonVGAMffArguments` for information.
`nsimEIM, zero` | See `CommonVGAMffArguments` for information.
`oim` | Use the OIM? See `CommonVGAMffArguments` for information.

### Details

The Michaelis-Menten model is given by

E(Y_i) = theta1 * u_i / (theta2 + u_i)

where theta1 and theta2 are the two parameters.

The relationship between iteratively reweighted least squares and the Gauss-Newton algorithm is given in Wedderburn (1974). However, the algorithm used by this family function is different. Details are given at the Author's web site.

### Value

An object of class `"vglmff"` (see `vglmff-class`). The object is used by modelling functions such as `vglm`, and `vgam`.

### Warning

This function is not (nor could ever be) entirely reliable. Plotting the fitted function and monitoring convergence is recommended.

### Note

The regressor values u_i are inputted as the RHS of the `form2` argument. It should just be a simple term; no smart prediction is used. It should just a single vector, therefore omit the intercept term. The LHS of the formula `form2` is ignored.

To predict the response at new values of u_i one must assign the `@extra$Xm2` slot in the fitted object these values, e.g., see the example below.

Numerical problems may occur. If so, try setting some initial values for the parameters. In the future, several self-starting initial values will be implemented.

### Author(s)

T. W. Yee

### References

Seber, G. A. F. and Wild, C. J. (1989). Nonlinear Regression, New York: Wiley.

Wedderburn, R. W. M. (1974). Quasi-likelihood functions, generalized linear models, and the Gauss-Newton method. Biometrika, 61, 439–447.

Bates, D. M. and Watts, D. G. (1988). Nonlinear Regression Analysis and Its Applications, New York: Wiley.

### See Also

`enzyme`.

### Examples

    mfit <- vglm(velocity ~ 1, micmen, data = enzyme, trace = TRUE,
                 crit = "coef", form2 = ~ conc - 1)
    summary(mfit)

    ## Not run:  plot(velocity ~ conc, enzyme, xlab = "concentration", las = 1,
         col = "blue", main = "Michaelis-Menten equation for the enzyme data",
         ylim = c(0, max(velocity)), xlim = c(0, max(conc)))
    points(fitted(mfit) ~ conc, enzyme, col = "red", pch = "+", cex = 1.5)

    # This predicts the response at a finer grid:
    newenzyme <- data.frame(conc = seq(0, max(with(enzyme, conc)), len = 200))
    mfit@extra$Xm2 <- newenzyme$conc # This assignment is needed for prediction
    lines(predict(mfit, newenzyme, "response") ~ conc, newenzyme, col = "red")
    ## End(Not run)

[Package VGAM version 1.1-3 Index]