Extract the knots from a function basis or data object

Share:

Description

Extract either all or only the interior knots from an object of class basisfd, fd, or fdSmooth.

Usage

1
2
3
4
5
6
## S3 method for class 'fd'
knots(Fn, interior=TRUE, ...)
## S3 method for class 'fdSmooth'
knots(Fn, interior=TRUE, ...)
## S3 method for class 'basisfd'
knots(Fn, interior=TRUE, ...)

Arguments

Fn

an object of class basisfd or containing such an object

interior

logical:

if TRUE, Fn[["params"]] are returned.

Else, nord <- norder(Fn); rng <- Fn[['rangeval']]; return c(rep(rng[1], nord), Fn[["params"]], rep(rng[2], nord))

...

ignored

Details

The interior knots of a bspline basis are stored in the params component. The remaining knots are in the rangeval component, with mulltiplicity norder(Fn).

Value

Numeric vector. If 'interior' is TRUE, this is the params component of the bspline basis. Otherwise, params is bracketed by rep(rangeval, norder(basisfd).

Author(s)

Spencer Graves

References

Dierckx, P. (1991) Curve and Surface Fitting with Splines, Oxford Science Publications.

See Also

fd, create.bspline.basis,

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
x <- 0:24
y <- c(1.0,1.0,1.4,1.1,1.0,1.0,4.0,9.0,13.0,
       13.4,12.8,13.1,13.0,14.0,13.0,13.5,
       10.0,2.0,3.0,2.5,2.5,2.5,3.0,4.0,3.5)

# knots.fdSmooth
girlGrowthSm <- with(growth, smooth.basisPar(argvals=age, y=hgtf,
                                             lambda=0.1)$fd)

girlKnots.fdSm  <- knots(girlGrowthSm)
girlKnots.fdSmA <- knots(girlGrowthSm, interior=FALSE)
stopifnot(all.equal(girlKnots.fdSm, girlKnots.fdSmA[5:33]))

girlKnots.fd  <- knots(girlGrowthSm)
girlKnots.fdA <- knots(girlGrowthSm, interior=FALSE)

stopifnot(all.equal(girlKnots.fdSm,  girlKnots.fd))
stopifnot(all.equal(girlKnots.fdSmA, girlKnots.fdA))

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.