[R] newbie nls question

Michael Manning michael.manning at niwa.co.nz
Wed Jun 11 01:08:21 CEST 2008


Hi

On 11/06/2008 at 10:56 a.m., "Ranney, Steven" <steven.ranney at montana.edu>
wrote:
> I'm tyring to fit a relatively simple nls model to some data, but keep coming 
> up against the same error (code follows):
> 
> Oto=nls(Otolith ~ Linf*(1-exp(-k(AGE-to))), 
>     data = ages, 
>     start = list(Linf=1000, k=0.1, to=0.1), 
>     trace = TRUE) 
> 
> The error message I keep getting is "Error in eval(expr, envir, enclos) : 
> could not find function "k"".  I've used this line of code for other nls 
> models (with different data, parameter estimates, etc.), but have never 
> gotten this error.  The data is 
> 
> AGE,Otolith,Scale
> 1,207.1052632,207.1052632
> 2,329.962963,332.7586207
> 3,401.9473684,406
> 4,422,413.1111111
> 5,452.6785714,458.34375
> 6,510.75,533
> 7,477,674
> 8,643,704
> 9,,615
> 10,695.5,
> 12,615,
> 
> Are the missing values (e.g., no value for Otolith, AGE 9) having an effect? 
>  I am using Tinn-R as an editor  
> 
> I'm new to R, trying to get away from Rcmdr (though it has been helpful), 
> and still trying to learn the language with the aid of several books on the 
> R.  A search of the R Archive did not prove fruitful.
> 
> Thanks in advance, 
> 
> SR
> 
> Steven H. Ranney

You've made a typo.

Check out the formula you passed to nls -- you forget to include a "*" after k.

What I think you want is something like

Oto <- nls(Otolith ~ Linf * (1 - exp(-k * (AGE - t0) ) ), ...)


Cheers,

Michael


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: michael_manning.vcf
URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20080611/a98be3b9/attachment.pl>


More information about the R-help mailing list