函数功能


cumsum 是 R 语言 base 包 cum 系列的一个函数,它的功能是计算向量的累积和并返回。


cum 系列还有另外三个函数: ​cumprod, ​cummin, ​cummax ,它们的作用分别是计算向量的累积的乘积、极小值、极大值,并返回。



函数参数说明


cum 系列函数只有一个参数: ​cumsum(x), ​cumprod(x), ​cummin(x), ​cummax(x) 。

  1. 当使用 ​cumsum 或 ​cumprod 时,x 可以是数值型(numeric)或复数型(complex)的向量、矩阵、数据框,因为数值型和复数型可做求和、求积。
  2. 当使用 ​cummin 或 ​cummax 时,x 只能是数值型的向量、矩阵、数据框。



函数返回值说明


当 x 是向量、矩阵时,cum 系列函数返回的是向量,因为矩阵的本质也是向量;当 x 是数据框时,返回值则仍为数据框。



函数使用示例


> cumsum(1:10)
 [1]  1  3  6 10 15 21 28 36 45 55



> cumsum(matrix(1:12, nrow = 3))
 [1]  1  3  6 10 15 21 28 36 45 55 66 78


> cumsum(data.frame(a = 1:10, b = 21:30))
    a   b
1   1  21
2   3  43
3   6  66
4  10  90
5  15 115
6  21 141
7  28 168
8  36 196
9  45 225
10 55 255


> x <- c(1 + 2i, 2 - 3i, 5 + 10i);
> x
[1] 1+ 2i 2- 3i 5+10i
> cumprod(x)
[1]  1+ 2i  8+ 1i 30+85i


> cummin(c(3, 2, 5, 1, 4))
[1] 3 2 2 1 1


> cummax(data.frame(a = c(3,2,5,1,4), b = c(1,8,3,6,5)))
  a b
1 3 1
2 3 8
3 5 8
4 5 8
5 5 8



参考资料