interpolateLinear: Linear interpolation

View source: R/utils.R

interpolateLinearR Documentation

Linear interpolation

Description

Linearly interpolates missing values of a numeric vector. For use with the colapply method of DTSg objects. Other uses are possible, but not recommended.

This function also serves as an example for writing user defined functions utilising one of the lists with helper data as handed over by some of the methods of DTSg objects.

Usage

interpolateLinear(.col, roll = Inf, rollends = TRUE, .helpers)

Arguments

.col

A numeric vector.

roll

A positive numeric specifying the maximum size of gaps whose missing values shall be interpolated. For time series with unrecognised periodicity it is interpreted in seconds and for time series with recognised periodicity it is multiplied with the maximum time difference between two subsequent time steps in seconds. Thus, for regular time series it is the number of time steps and for irregular it is an approximation of it.

rollends

A logical specifying if missing values at the start and end of the time series shall be filled. See data.table::data.table for further information.

.helpers

A list with helper data as handed over by colapply. See colapply for further information.

Value

Returns a numeric vector.

Examples

# new DTSg object
x <- DTSg$new(values = flow)

# linear interpolation of missing values
## R6 method
x$colapply(fun = interpolateLinear)$print()

## S3 method
print(colapply(x = x, fun = interpolateLinear))


DTSg documentation built on Sept. 28, 2023, 1:06 a.m.