roll_cov | R Documentation |
A function for computing the rolling and expanding covariances of time-series data.
roll_cov(x, y = NULL, width, weights = rep(1, width), center = TRUE,
scale = FALSE, min_obs = width, complete_obs = TRUE,
na_restore = FALSE, online = TRUE)
x |
vector or matrix. Rows are observations and columns are variables. |
y |
vector or matrix. Rows are observations and columns are variables. |
width |
integer. Window size. |
weights |
vector. Weights for each observation within a window. |
center |
logical. If |
scale |
logical. If |
min_obs |
integer. Minimum number of observations required to have a value within a window,
otherwise result is |
complete_obs |
logical. If |
na_restore |
logical. Should missing values be restored? |
online |
logical. Process observations using an online algorithm. |
The denominator used gives an unbiased estimate of the covariance,
so if the weights are the default then the divisor n - 1
is obtained.
A cube with each slice the rolling and expanding covariances.
n <- 15
x <- rnorm(n)
y <- rnorm(n)
weights <- 0.9 ^ (n:1)
# rolling covariances with complete windows
roll_cov(x, y, width = 5)
# rolling covariances with partial windows
roll_cov(x, y, width = 5, min_obs = 1)
# expanding covariances with partial windows
roll_cov(x, y, width = n, min_obs = 1)
# expanding covariances with partial windows and weights
roll_cov(x, y, width = n, min_obs = 1, weights = weights)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.