R: (Cubic) Interpolation Spline from "conreg"

interpSplineCon {cobs} | R Documentation

## (Cubic) Interpolation Spline from "conreg"

### Description

From a `"conreg"` object representing a linear spline,

`interpSplineCon()`

  produces the corresponding (cubic) spline (via package splines' `interpSpline()`) by interpolating at the knots, thus “smoothing the kinks”.

`isIsplineCon()`

  determines if the spline fulfills the same convexity / concavity constraints as the underlying `"conreg"` object.

### Usage

    interpSplineCon(object, ...)
    isIsplineCon(object, isp, ...)

### Arguments

`object` | an R object as resulting from `conreg()`.
`isp` | optionally, the result of `interpSplineCon(object, ...)`; useful if that is already available in the caller.
`...` | optional further arguments passed to `interpSpline()`.

### Value

`interpSplineCon()`

  returns the `interpSpline()` interpolation spline object.

`isIsplineCon()`

  is `TRUE` (or `FALSE`), indicating if the convexity/concavity constraints are fulfilled (in knot intervals).

### Author(s)

Martin Maechler

### See Also

`conreg`, `interpSpline`.

### Examples

    cc <- conreg(cars[,"speed"], cars[,"dist"], convex=TRUE)
    iS <- interpSplineCon(cc)
    (isC <- isIsplineCon(cc)) # FALSE: not strictly convex
    ## Passing the interpolation spline --- if you have it anyway ---
    ## is more efficient (faster) :
    stopifnot(identical(isC,
                        isIsplineCon(cc, isp = iS)))

    ## the interpolation spline is not quite convex:
    plot(cc)
    with(cars, points(dist ~ speed, col = adjustcolor(1, 1/2)))
    lines(predict(iS, seq(1,28, by=1/4)),
          col = adjustcolor("forest green", 3/4), lwd=2)

[Package cobs version 1.3-3 Index]