Вы можете использовать встроенную функцию diff
в R
, чтобы сначала вычислить различия.Это вернет вектор, содержащий некоторые NA
значения (соответствующие NA
в x
).Затем вы можете удалить их, оставив вектор, содержащий только не-1006 * значения.
# make a vector with some NA values
x = rnorm(100)
x[sample(c(T, F), 100, prob = c(0.05, 0.95), replace=T)] = NA
# compute differences and take absolute value
d = abs(diff(x))
# remove na values
d2 = d[!is.na(d)]