R:向量中的平均附近元素
R: Average nearby elements in a vector
我有很多这样的向量:c(28, 30, 50, 55, 99, 102)
我想获得一个新的向量,其中元素之间相差小于 10 的元素被平均。在这种情况下,我想获得 c(29, 52.5, 100.5)
.
另一种方式
vec <- c(28, 30, 50, 55, 99, 102)
indx <- cumsum(c(0, diff(vec)) > 10)
tapply(vec, indx, mean)
# 0 1 2
# 29.0 52.5 100.5
我有很多这样的向量:c(28, 30, 50, 55, 99, 102)
我想获得一个新的向量,其中元素之间相差小于 10 的元素被平均。在这种情况下,我想获得 c(29, 52.5, 100.5)
.
另一种方式
vec <- c(28, 30, 50, 55, 99, 102)
indx <- cumsum(c(0, diff(vec)) > 10)
tapply(vec, indx, mean)
# 0 1 2
# 29.0 52.5 100.5