roll_max: Rolling Maximums

Description Usage Arguments Value Examples

View source: R/roll.R

Description

A function for computing the rolling and expanding maximums of time-series data.

Usage

1
2
roll_max(x, width, weights = rep(1, width), min_obs = width,
  complete_obs = FALSE, na_restore = FALSE, online = TRUE)

Arguments

x

vector or matrix. Rows are observations and columns are variables.

width

integer. Window size.

weights

vector. Weights for each observation within a window.

min_obs

integer. Minimum number of observations required to have a value within a window, otherwise result is NA.

complete_obs

logical. If TRUE then rows containing any missing values are removed, if FALSE then each value is used.

na_restore

logical. Should missing values be restored?

online

logical. Process observations using an online algorithm.

Value

An object of the same class and dimension as x with the rolling and expanding maximums.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
n <- 15
x <- rnorm(n)
weights <- 0.9 ^ (n:1)

# rolling maximums with complete windows
roll_max(x, width = 5)

# rolling maximums with partial windows
roll_max(x, width = 5, min_obs = 1)

# expanding maximums with partial windows
roll_max(x, width = n, min_obs = 1)

# expanding maximums with partial windows and weights
roll_max(x, width = n, min_obs = 1, weights = weights)

Example output

 [1]        NA        NA        NA        NA 1.1989280 1.1989280 1.1989280
 [8] 1.1989280 1.1989280 0.7682325 0.7682325 0.6083216 0.6720857 0.7375253
[15] 0.7375253
 [1] -1.0985768 -1.0985768 -0.3163291 -0.1004748  1.1989280  1.1989280
 [7]  1.1989280  1.1989280  1.1989280  0.7682325  0.7682325  0.6083216
[13]  0.6720857  0.7375253  0.7375253
 [1] -1.0985768 -1.0985768 -0.3163291 -0.1004748  1.1989280  1.1989280
 [7]  1.1989280  1.1989280  1.1989280  1.1989280  1.1989280  1.1989280
[13]  1.1989280  1.1989280  1.1989280
 [1] -1.0985768 -1.0985768 -0.3163291 -0.1004748  1.1989280  1.1989280
 [7]  1.1989280  1.1989280  1.1989280  1.1989280  1.1989280  1.1989280
[13]  1.1989280  1.1989280  1.1989280

roll documentation built on July 13, 2020, 5:09 p.m.