slm {assist}R Documentation

Fit a Semi-parametric Linear Mixed Effects Model


Returns an object of class slm that represents a semi-parametric linear mixed effects model fit.


slm(formula, rk, data=sys.parent(), random, weights=NULL, 
correlation=NULL, control=<see below>)


formula a formula object, with the response on the left of a ~ operator, and the bases of the null space H_0 of the non-parametric function and other terms, separated by + operators, on the right.
rk a list of expressions that specify the reproducing kernels of the spline function(s), R^1,...,R^p for spaces H_1,...,H_p. See the help file of ssr for more details.
data An optional data frame containing the variables appearing in formula, random, rk, correlation, weights. By default, the variables are taken from the environment from which slm is called.
random A named list of formulae, lists of formulae, or pdMat objects, which defines nested random effects structures. See help file of lme for more details.
weights An optional varFun object or one-sided formula describing the within-group heteroscedasticity stucture. See the help file of lme for more details.
correlation An optional corStruct object specifying the within-group correlation structure. See lme for more details.
control an optional list of any applicable control parameters from lme.


This generic function fits a semi-parametric linear mixed effects model (or non-parametric mixed effects models) as described in Wang (1998), but allowing for general random and correlation structures. Because the connection to a linear mixed effects model is adopted, only GML is available to choose smoothing parameters.


An object of class slm is returned. Generic functions such as print, summary, predict and intervals have methods to show the results of the fit.


Chunlei Ke and Yuedong Wang


Wang, Y. (1998) Mixed Effects Smoothing Spline ANOVA. JRSS, Series B, 60:159–174.

Pinherio, J. C. and Bates, D. M. (2000) Mixed-effects Models in S and S-Plus. Springer.

See Also

ssr, lme, varFunc, corClasses, predict.slm, intervals.slm, print.slm,summary.slm


## SS ANOVA is used to model "time" and "group" 
## with random intercept for "dog".
data(dog)<- slm(y~group*time, rk=list(cubic(time), shrink1(group),,shrink1(group)),, 
        shrink1(group))), random=list(dog=~1), data=dog)

[Package Contents]