IsplineBasis {CMLS} | R Documentation |
I-Spline Basis for Monotonic Polynomial Splines
Description
Generate the I-spline basis matrix for a monotonic polynomial spline.
Usage
IsplineBasis(x, df = NULL, knots = NULL, degree = 3, intercept = FALSE,
Boundary.knots = range(x))
Arguments
x |
the predictor variable. Missing values are not allowed. |
df |
degrees of freedom; if specified the number of |
knots |
the internal breakpoints that define the spline (typically the quantiles of |
degree |
degree of the M-spline basis—default is 3 for cubic splines |
intercept |
if |
Boundary.knots |
boundary points for M-spline basis; defaults to min and max of |
Details
Syntax is adapted from the bs
function in the splines package (R Core Team, 2021).
Used for implementing monotonic smoothness constraints in the cmls
fucntion.
Value
A matrix of dimension c(length(x), df)
where either df
was supplied or df = length(knots) + degree + ifelse(intercept, 1, 0)
Note
I-spline basis functions are created by integrating M-spline basis functions.
Author(s)
Nathaniel E. Helwig <helwig@umn.edu>
References
R Core Team (2023). R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria. https://www.R-project.org/
Ramsay, J. O. (1988). Monotone regression splines in action. Statistical Science, 3, 425-441. doi:10.1214/ss/1177012761
See Also
Examples
x <- seq(0, 1, length.out = 101)
I <- IsplineBasis(x, df = 8, intercept = TRUE)
plot(x, I[,1], ylim = c(0, 1), t = "l")
for(j in 2:8) lines(x, I[,j], col = j)