dcs {DCSmooth}R Documentation

Nonparametric Double Conditional Smoothing for 2D Surfaces


dcs provides a double conditional nonparametric smoothing of the expectation surface of a functional time series or a random field on a lattice. Bandwidth selection is done via an iterative plug-in method.


dcs(Y, dcs_options = set.options(), h = "auto", parallel = FALSE, ...)



A numeric matrix that contains the observations of the random field or functional time-series.


An object of class "dcs_options", specifying the parameters for the smoothing and bandwidth selection procedure.


Bandwidth for smoothing the observations in Y. Can be a two-valued numerical vector with bandwidths in row- and column-direction. If the value is "auto" (the default), bandwidth selection will be carried out by the iterative plug-in algorithm.


A logical value indicating if parallel computing should be used for faster computation. Default value is parallel = FALSE. Parallelization seems to be efficient at above 400,000 observations.


Additional arguments passed to dcs. Currently supported are numerical vectors X and/or T containing the exogenous covariates with respect to the rows and columns.


dcs returns an object of class "dcs", including

Y matrix of original observations.
X, T vectors of covariates over rows (X) and columns (T).
M resulting matrix of smoothed values.
R matrix of residuals of estimation, Y - M.
h optimized or given bandwidths.
c_f estimated variance coefficient.
var_est estimated variance model. If the variance function is modeled by an SARMA/SFARIMA, var_est is an object of class "sarma"/ "sfarima".
dcs_options an object of class cds_options containing the initial options of the dcs procedure.
iterations number of iterations of the IPI-procedure.
time_used time spend searching for optimal bandwidths (not overall runtime of the function).


See the vignette for a more detailed description of the function.


Schäfer, B. and Feng, Y. (2021). Fast Computation and Bandwidth Selection Algorithms for Smoothing Functional Time Series. Working Papers CIE 143, Paderborn University.

See Also



# See vignette("DCSmooth") for examples and explanation

y <- y.norm1 + matrix(rnorm(101^2), nrow = 101, ncol = 101)

[Package DCSmooth version 1.1.2 Index]