weights {npreg} | R Documentation |
Extract Smooth Model Weights
Description
Extracts prior weights from a fit smoothing spline (fit by ss
), smooth model (fit by sm
), or generalized smooth model (fit by gsm
).
Usage
## S3 method for class 'ss'
weights(object, ...)
## S3 method for class 'sm'
weights(object, ...)
## S3 method for class 'gsm'
weights(object, ...)
Arguments
object |
an object of class "gsm" output by the |
... |
other arugments (currently ignored) |
Details
Returns the "prior weights", which are user-specified via the w
argument (of the ss
function) or the weights
argument (of the sm
and gsm
functions). If no prior weights were supplied, returns the (default) unit weights, i.e., rep(1, nobs)
.
Value
Prior weights extracted from object
Author(s)
Nathaniel E. Helwig <helwig@umn.edu>
References
Chambers, J. M. and Hastie, T. J. (1992) Statistical Models in S. Wadsworth & Brooks/Cole.
Helwig, N. E. (2020). Multiple and Generalized Nonparametric Regression. In P. Atkinson, S. Delamont, A. Cernat, J. W. Sakshaug, & R. A. Williams (Eds.), SAGE Research Methods Foundations. doi:10.4135/9781526421036885885
See Also
Examples
# generate weighted data
set.seed(1)
n <- 100
x <- seq(0, 1, length.out = n)
w <- rep(5:15, length.out = n)
fx <- 2 + 3 * x + sin(2 * pi * x)
y <- fx + rnorm(n, sd = 0.5 / sqrt(w))
# smoothing spline
mod.ss <- ss(x, y, w, nknots = 10)
w.ss <- weights(mod.ss)
# smooth model
mod.sm <- sm(y ~ x, weights = w, knots = 10)
w.sm <- weights(mod.sm)
# generalized smooth model (family = gaussian)
mod.gsm <- gsm(y ~ x, weights = w, knots = 10)
w.gsm <- weights(mod.gsm)
# note: weights are internally rescaled such as
w0 <- w / mean(w)
max(abs(w0 - w.ss))
max(abs(w0 - w.sm))
max(abs(w0 - w.gsm))