Re: [R] Taking the derivative of a quadratic B-spline

From: Duncan Murdoch <>
Date: Wed 20 Jul 2005 - 05:07:23 EST

On 7/19/2005 2:53 PM, James McDermott wrote:
> Hello,
> I have been trying to take the derivative of a quadratic B-spline
> obtained by using the COBS library. What I would like to do is
> similar to what one can do by using
> fit<-smooth.spline(cdf)
> xx<-seq(-10,10,.1)
> predict(fit, xx, deriv = 1)
> The goal is to fit the spline to data that is approximating a
> cumulative distribution function (e.g. in my example, cdf is a
> 2-column matrix with x values in column 1 and the estimate of the cdf
> evaluated at x in column 2) and then take the first derivative over a
> range of values to get density estimates.
> The reason I don't want to use smooth.spline is that there is no way
> to impose constraints (e.g. >=0, <=1, and monotonicity) as there is
> with COBS. However, since COBS doesn't have the 'deriv =' option, the
> only way I can think of doing it with COBS is to evaluate the
> derivatives numerically.

Numerical estimates of the derivatives of a quadratic should be easy to obtain accurately. For example, if the quadratic ax^2 + bx + c is defined on [-1, 1], then the derivative 2ax + b, has 2a = f(1) - f(0) + f(-1), and b = (f(1) - f(-1))/2.

You should be able to generalize this to the case where the spline is quadratic between knots k1 and k2 pretty easily.

Duncan Murdoch mailing list PLEASE do read the posting guide! Received on Wed Jul 20 05:12:33 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:33:50 EST