predict.bSpline {splines} | R Documentation

## Evaluate a spline at new values of x

### Description

The `predict` methods for the classes that inherit from the virtual classes `bSpline` and `polySpline` are used to evaluate the spline or its derivatives. The `plot` method for a spline object first evaluates `predict` with the `x` argument missing, then plots the resulting `xyVector` with `type = "l"`.

### Usage

    predict.bSpline(object, x, nseg=50, deriv=0)
    predict.nbSpline(object, x, nseg=50, deriv=0)
    predict.pbSpline(object, x, nseg=50, deriv=0)
    predict.npolySpline(object, x, nseg=50, deriv=0)
    predict.ppolySpline(object, x, nseg=50, deriv=0)
    plot.spline(x, ...)

### Arguments

`object` | An object that inherits from the `bSpline` or the `polySpline` class. For `plot.spline` this argument is called `x`.
`x` | A numeric vector of `x` values at which to evaluate the spline. If this argument is missing a suitable set of `x` values is generated as a sequence of `nseq` segments spanning the range of the knots. For `plot.spline` the `x` argument is as described under `object` above.
`nseg` | A positive integer giving the number of segments in a set of equally-spaced `x` values spanning the range of the knots in `object`. This value is only used if `x` is missing.
`deriv` | An integer between 0 and `splineOrder(object) - 1` specifying the derivative to evaluate.
`...` | additional graphical parameters (see `link{par}`).

### Value

an `xyVector` with components

`x` | the supplied or inferred numeric vector of `x` values
`y` | the value of the spline (or its `deriv`'th derivative) at the `x` vector

### Author(s)

Douglas Bates and Bill Venables

### See Also

`xyVector`, `interpSpline`, `periodicSpline`

### Examples

    library( splines )
    data( women )
    ispl <- interpSpline( weight ~ height,  women )
    opar <- par(mfrow = c(2, 2), las = 1)
    plot(predict(ispl, nseg = 201),     # plots over the range of the knots
         main = "Original data with interpolating spline", type = "l",
         xlab = "height", ylab = "weight")
    points(women$height, women$weight, col = 4)
    plot(predict(ispl, nseg = 201, deriv = 1),
         main = "First derivative of interpolating spline", type = "l",
         xlab = "height", ylab = "weight")
    plot(predict(ispl, nseg = 201, deriv = 2),
         main = "Second derivative of interpolating spline", type = "l",
         xlab = "height", ylab = "weight")
    plot(predict(ispl, nseg = 401, deriv = 3),
         main = "Third derivative of interpolating spline", type = "l",
         xlab = "height", ylab = "weight")
    par(opar)

[Package Contents]