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-8 Index]