rbpspline | R Documentation |
Fits a penalized spline with radial basis functions to data.
rbpspline(y, x, knots, degree, penalty = "gcv", ...)
y |
The response vector. |
x |
A vector/matrix giving the values of the predictor
variable(s). If |
knots |
A vector givint the coordinates of the knots. |
degree |
The degree of the penalized smoothing spline. |
penalty |
A numeric giving the penalty coefficient for the
penalization term. Alternatively, it could be either 'cv' or 'gcv'
to choose the |
... |
Additional options to be passed to the |
The penalized spline with radial basis is defined by:
f(x) = β_0 + β_1 x + … + β_{m-1} x^{m-1} + ∑_{k=0}^{K-1} β_{m+k} || x - κ_k ||^{2m - 1}
where β_i are the coefficients to be estimated,
κ_i are the coordinates of the i-th knot and
m = (d+1)/2 where d corresponds to
the degree
of the spline.
The fitting criterion is to minimize
||y - X β||^2 + λ^{2m-1} β^T K β
where λ is the penalty coefficient and K the penalty matrix.
An object of class pspline
.
Mathieu Ribatet
Ruppert, D. Wand, M.P. and Carrol, R.J. (2003) Semiparametric Regression Cambridge Series in Statistical and Probabilistic Mathematics.
cv
, gcv
n <- 200 x <- runif(n) fun <- function(x) sin(3 * pi * x) y <- fun(x) + rnorm(n, 0, sqrt(0.4)) knots <- quantile(x, prob = 1:(n/4) / (n/4 + 1)) fitted <- rbpspline(y, x, knots = knots, degree = 3) fitted plot(x, y) lines(fitted, col = 2)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.