On 15/08/18 03:48, Tania Morgado Garcia wrote:
Hello everyone. I'm new to R and I'm using spline functions. With the
command splinefun (x, y) I get the function of interpolating the values x
and y. Later, I can evaluate that function for values of x by obtaining the
respective values of y. The point is that I need the inverse operation,
with the function, for a value of Y I need to know the value of x. Could
you please help me?
Your question is ill-posed. There could easily be multiple x values
corresponding to a single y value, unless the spline function is monotone.
If you can specify an interval which encloses the x value that you are
trying to and over which the spline function is monotone, then uniroot()
might provide what you want.
Something like:
spf <- splinefun(x,y)
uniroot(f=function(x){spf-y0},interval=c(a,b))
where y0 is the y value for which you want the corresponding x value,
where spf() is monotone on [a,b], and where there *exists* an x value
between a and b such that spf(x) = y0.
Good luck.
cheers,
Rolf Turner
--
Technical Editor ANZJS
Department of Statistics
University of Auckland
Phone: +64-9-373-7599 ext. 88276
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
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.