[R] Beginners Question: Make nlm work

Johannes Graumann johannes_graumann at web.de
Thu Aug 26 01:07:32 CEST 2004


Hello,

I'm new to this and am trying to teach myself some R by plotting
biological data. The growth curve in question is supposed to be fitted
to the Verhulst equation, which may be transcribed as follows:
f(x)=a/(1+((a-0.008)/0.008)*exp(-(b*x)))
- for a known population density (0.008) at t(0).

I am trying to rework the example from "An Introduction to R" (p. 72)
for my case and am failing miserably. Could somebody glance over the
code below and nudge me into the right direction - I must have some
major conceptual problem which can't be solved by me staring at it ...
Since I'm repeating something I have done with gnuplot I know that 3 and
4e-3 as starting values for the fit are appropriate ...

Thanks for any hint,

Joh

setwd("~/Biology/R_versuch")
mydata<-read.table("YJG45-7_Growth.dat")
x<-mydata$V1
y<-mydata$V2
VH <- function(p) y ~ p[1]/(1+((p[1]-0.008)/0.008)*exp(-(p[2]*x)))
plot(x, y, xlab="Time (h)",ylab=expression(OD[600][~nm]),las=1)
out <- nlm(VH, p = c(3, 4e-3), hessian = TRUE)




More information about the R-help mailing list