I am working on fitting a model using the nlme package in R. y is a saturating function of x, similar in form to a michaelis-menten function where

y = Vm*x / (K+x)

I would like to parameterize this model using my data set, and control for a third variable, z, as a random effect. I cannot seem to implement this so far in the nlme framework. Any tips on how to do so, or how to do so in a different package, would be greatly appreciated.

  • 1
    $\begingroup$ I guess you should be more specific about what you tried and where exactly the problem starts. $\endgroup$ Jun 4, 2014 at 16:15
  • 1
    $\begingroup$ Try library(nlme), then help(SSmicmen). $\endgroup$
    – Sergio
    Jun 4, 2014 at 16:18
  • 1
    $\begingroup$ How does $z$ enter into the model? $\endgroup$ Jun 4, 2014 at 16:46

1 Answer 1


I solved this problem. You can code a michaelis menten function and specify a random effect in the nlme function of R using the following format:

model<-nlme(y~Vm*x/(K+x), fixed=(Vm+K~1), random=Vm+K~1|z)

It is useful to add starting estimates that are realistic for your parameters, which you can eyeball from a plot of your data.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.