R函数,用于计算“累计差”

问题描述 投票:0回答:1

我有一个像矢量

v <- c(76, 31, 33, 7)

并且需要计算其“累积差异”导致

cumdiff <- c(45, 12, 5)

这是76-31 = 45和45-33 = 12和12-7 = 5。

是否有像cumsum这样的R函数,或者我需要使用循环?

非常感谢您的帮助。

r difference cumsum
1个回答
1
投票

使用Reduce的选项:

Reduce(`-`, v, accumulate=TRUE)[-1L]
#[1] 45 12  5

或使用cumsum的负数>

v[1L] - cumsum(v[-1L])
© www.soinside.com 2019 - 2024. All rights reserved.