MATLAB中的累积和
一个序列的累积和是一个序列的运行和或部分和。
序列{a,b,c,…}的累积和是a, a+b, a+b+c, ….
MATLAB允许我们使用cumsum()方法来计算矢量、矩阵的累积和。cumsum()方法的不同语法如下。
- B = cumsum(A)
- B = cumsum(A,dim)
- B = cumsum(___,direction)
- B = cumsum(___,nanflag)
让我们详细讨论一下上述语法。
cumsum(A)
- 该方法返回从数组A开始的A的累积和。
- 如果A是一个向量,那么它返回序列A的累积和。
- 如果A是一个矩阵,那么它沿A的每一列返回累积和。
示例 1:
输出:
示例 2:
输出 :
cumsum(A,dim)
- 返回矩阵A的累积和以及每个dim的累积和。
- dim有两个值1或2。
- dim=1,指的是沿着每一列。
- dim=2,沿每行指代。
输出 :
cumsum(___,direction)
- 返回输入向量或矩阵在给定方向上的累积和。
- 方向有两个值 “正向 “或 “反向”。
- 如果方向是’反向’,则反向计算累积和,即如果我们沿每一列考虑矩阵,则返回从每一列的底部到顶部开始的累积和。
输出 :
cumsum(___,nanflag)
- nanflag值决定在累积和中是否包括或排除向量的NaN值。
- nanflag有两个值’includenan’或’omitnan’,分别对应于包括NaN元素和排除NaN元素。
- omitNaN’认为NaN值为0 .
注意: NaN + number = NaN
输出 :