[R] R formula language---a min and max function?

ivo welch ivo.welch at gmail.com
Tue May 4 21:52:09 CEST 2010


thank you, david.  indeed.  works great (almost).  an example for
anyone else googling this in the future:

> x=1:20
> y= 2+3*ifelse(x>10, 10, x)+rnorm(20,0,0.01)
> r1= nls( y~ a+b*pmin(c,x), start=list(a=2, b=3, c=10), trace=TRUE )
0.002142 :   2  3 10
0.002115 :   2.004  3.000 10.000
0.002114 :   2.006  2.999 10.001
0.002084 :   2.005  2.999 10.000
...
0.002079 :   2.005  2.999 10.000
Error in nls(y ~ a + b * pmin(c, x), start = list(a = 2, b = 3, c = 10),  :
  step factor 0.000488281 reduced below 'minFactor' of 0.000976562

strange error, but unrelated to my question.  will figure this one out next.

regards,

/iaw


On Tue, May 4, 2010 at 3:40 PM, David Winsemius <dwinsemius at comcast.net> wrote:
>
> On May 4, 2010, at 3:33 PM, ivo welch wrote:
>
>> Dear R experts---I would like to estimate a non-linear least squares
>> expression that looks something like
>>
>>  y ~ a+b*min(c,x)
>>
>> where a, b, and c are the three parameters.  how do I define a min
>> function in the formula language of R?  advice appreciated.
>
> ?pmin
>
>>
>> sincerely,
>>
>> /iaw
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> David Winsemius, MD
> West Hartford, CT
>
>



More information about the R-help mailing list