smooth_curves: Perform a non-parametric smoothing of a set of curves

Description Usage Arguments Value Examples

View source: R/smooth_curves.R

Description

This function performs a non-parametric smoothing of a set of curves using the Nadaraya-Watson estimator. The bandwidth is estimated using the method from add ref.

Usage

1
smooth_curves(data, U = NULL, t0_list = 0.5, k0_list = 2, K = "epanechnikov")

Arguments

data

A list, where each element represents a curve. Each curve have to be defined as a list with two entries:

  • $t The sampling points

  • $x The observed points.

U

A vector of numerics, sampling points at which estimate the curves. If NULL, the sampling points for the estimation are the same than the observed ones.

t0_list

A vector of numerics, the sampling points at which we estimate H0. We will consider the 8k0 - 7 nearest points of t_0 for the estimation of H_0 when σ is unknown.

k0_list

A vector of numerics, the number of neighbors of t_0 to consider. Should be set as

k0 = M* exp(-log(log(M))^2)

. We can set a different k_0, but in order to use the same for each t_0, just put a unique numeric.

K

Character string, the kernel used for the estimation:

  • epanechnikov (default)

  • uniform

  • beta

Value

A list, which contains two elements. The first one is a list which contains the estimated parameters:

The second one is another list which contains the estimation of the curves:

Examples

1
2
3
4
5
6
7
X <- generate_fractional_brownian(N = 1000, M = 300, H = 0.5, sigma = 0.05)
X_smooth <- smooth_curves(X)

X <- generate_piecewise_fractional_brownian(N = 1000, M = 300, 
                                            H = c(0.2, 0.5, 0.8), 
                                            sigma = 0.05)
X_smooth <- smooth_curves(X, t0_list = c(0.15, 0.5, 0.85), k0_list = 6)

StevenGolovkine/SmoothCurves documentation built on Nov. 14, 2021, 1:12 p.m.