# coef: Extract Smooth Model Coefficients In npreg: Nonparametric Regression via Smoothing Splines

 coef R Documentation

## Extract Smooth Model Coefficients

### Description

Extracts basis function coefficients 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 'gsm'
coef(object, ...)

## S3 method for class 'sm'
coef(object, ...)

## S3 method for class 'ss'
coef(object, ...)
``````

### Arguments

 `object` an object of class "gsm" output by the `gsm` function, "sm" output by the `sm` function, or "ss" output by the `ss` function `...` other arugments (currently ignored)

### Details

For "ss" objects, the coefficient vector will be of length `m + q` where `m` is the dimension of the null space and `q` is the number of knots used for the fit.

For "sm" and "gsm" objects, the coefficient vector will be of length `m + q` if the `tprk = TRUE` (default). Otherwise the length will depend on the model formula and marginal knot placements.

### Value

Coefficients extracted from the model `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. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.4135/9781526421036885885")}

`ss`, `sm`, `gsm`

`model.matrix`, `fitted.values`, `residuals`

### Examples

``````# generate data
set.seed(1)
n <- 100
x <- seq(0, 1, length.out = n)
fx <- 2 + 3 * x + sin(2 * pi * x)
y <- fx + rnorm(n, sd = 0.5)

# smoothing spline
mod.ss <- ss(x, y, nknots = 10)
fit.ss <- fitted(mod.ss)
coef.ss <- coef(mod.ss)
X.ss <- model.matrix(mod.ss)
mean((fit.ss - X.ss %*% coef.ss)^2)

# smooth model
mod.sm <- sm(y ~ x, knots = 10)
fit.sm <- fitted(mod.sm)
coef.sm <- coef(mod.sm)
X.sm <- model.matrix(mod.sm)
mean((fit.sm - X.sm %*% coef.sm)^2)

# generalized smooth model (family = gaussian)
mod.gsm <- gsm(y ~ x, knots = 10)
fit.gsm <- fitted(mod.gsm)
coef.gsm <- coef(mod.gsm)
X.gsm <- model.matrix(mod.gsm)
mean((fit.gsm - X.gsm %*% coef.gsm)^2)

``````

npreg documentation built on May 29, 2024, 4:17 a.m.