[R] How to define specially nested functions

Phil Spector spector at stat.berkeley.edu
Fri Apr 29 06:50:16 CEST 2011

Here's one possibility:

> funmaker = function(x,y,z)function(z)x + y + (x^2 - z)
> uniroot(funmaker(1,3,z),c(0,10))$root
[1] 5
> uniroot(funmaker(5,2,z),c(30,40))$root
[1] 32

(The third argument to the function doesn't really do anything.)

 					- Phil Spector
 					 Statistical Computing Facility
 					 Department of Statistics
 					 UC Berkeley
 					 spector at stat.berkeley.edu

On Thu, 2011-04-28 at 23:08 -0400, Chee Chen wrote:
> Dear All,
> I would like to define a function: f(x,y,z) with three arguments x,y,z, such that: given
values for x,y,  f(x,y,z) is still a function of z and that I am still allowed to find the
root in terms of z when x,y are given.
> For example: f(x,y,z) =  x+y + (x^2-z),  given x=1,y=3, f(1,3,z)= 1+3+1-z is a function of
z, and then I can use R to find the root z=5.

More information about the R-help mailing list