ad: Adaptive smooth terms in a SOP model formula

adR Documentation

Adaptive smooth terms in a SOP model formula

Description

Auxiliary function used to define adaptive smooth terms in a sop model formula. The function does not do any fitting but is used as part of a sop() model formula.

Usage

ad(..., nseg = 10, pord = 2, degree = 3, nseg.sp = 5, degree.sp = 3)

Arguments

...

the x-variable (continuous) to be used for adaptive smoothing. Currently, only one dimensional adaptive smoothers are allowed.

nseg

the number of segments for the B-spline basis used to represent the smooth term. The default value is 10.

pord

penalty order. The defauly value is 2 (second order penalty).

degree

the order of the polynomial for the B-spline basis for this term. The default value is 3 (cubic B-splines).

nseg.sp

the number of segments for the B-spline basis used to ‘smooth’ the smoothing parameters. The default value is 5.

degree.sp

the order of the polynomial for the B-spline basis used for smoothing of the smoothing parameters. The default value is 3 (cubic B-splines).

Details

The function ad() can be use to fit an adaptive smooth function of x. An ‘adaptive’ smooth function is one in which the smoothing parameter is allowed to vary over the range of the explanatory variable x. Details can be found in Rodriguez-Alvarez at. al (2019).

Value

The function is interpreted in the formula of a sop model and creates the right framework for fitting the adaptive smoother. List containing the following objects:

vars

name of the covariates involved in the adaptive smooth term.

nseg

the number of segments for the B-spline basis.

pord

the penalty order.

degree

the order of the polynomial for the B-Spline basis for this term.

nseg.sp

the number of segments for the B-spline basis used to ‘smooth’ the smoothing parameters.

degree.sp

the order of the polynomial for the B-spline basis used for smoothing of the smoothing parameters.

dim

The dimension of the smoother - i.e. the number of covariates that it is a function of.

label

labels terms.

References

Rodriguez-Alvarez, M.X., Durban, M., Lee, D. J. and Eilers, P. (2019). On the estimation of variance parameters in non-standard generalised linear mixed models: application to penalised smoothing. Statistics and Computing, 29 (3), 483–500.

See Also

f, rae, sop

Examples

library(SOP)
# Simulate the data
set.seed(123)
n <- 1000
x <- runif(n, 0.0001, 1)
doppler.function <- function(x) sin(4 / (x + 0.1)) + 1.5
mu <- doppler.function(x)
sigma <- 0.2
y <- mu + sigma*rnorm(n)
dat <- data.frame(x = x, y = y)

# Fit the models
# With addaptive smoothing
m0 <- sop(formula = y ~ ad(x, nseg = 197, nseg.sp = 17), data = dat, 
         control =  list(trace = FALSE, epsilon = 1e-03))

# Without addaptive smoothing
m1 <- sop(formula = y ~ f(x, nseg = 197), data = dat, 
         control =  list(trace = FALSE, epsilon = 1e-03))         

# Plot results
plot(y ~ x, data = dat)
ox <- order(dat$x)
lines(fitted(m0)[ox] ~ dat$x[ox], col = 2, lwd = 2)
lines(fitted(m1)[ox] ~ dat$x[ox], col = 4, lwd = 2)
legend("topright", c("Theoretical", "Adaptive", "Non Adaptive"), 
    col = c(1,2,4), lty = 1, lwd = 2, bty = "n")	

SOP documentation built on Sept. 16, 2023, 1:07 a.m.