matlab中使用sum和cumsum两个加和函数,区别联系
matlab中cumsum函数通常用于计算一个数组各行的累加值。在matlab的命令窗口中输入doc cumsum或者help cumsum即可获得该函数的帮助信息。
调用格式及说明
matlab中cumsum函数通常用于计算一个数组各行的累加值。在matlab的命令窗口中输入doc cumsum或者help cumsum即可获得该函数的帮助信息。
调用格式及说明
格式一:B = cumsum(A)
这种用法返回数组不同维数的累加和。
为了便于接下来的叙述,解释一下matlab中矩阵、数组、向量的概念:[1]
首先,matlab的是矩阵实验室的意思。也就是说matlab中的数据都被视为矩阵。
数组就是一个一行n列的矩阵,向量就是一个n行一列的矩阵。
如果A是一个向量, cumsum(A) 返回一个向量,该向量中第m行的元素是A中第1行到第m行的所有元素累加和;
如果A是一个矩阵, cumsum(A) 返回一个和A同行同列的矩阵,矩阵中第m行第n列元素是A中第1行到第m行的所有第n列元素的累加和;
如果A是一个多维数组, cumsum(A)只对A中第一个非奇异维进行计算。
格式二:B = cumsum(A,dim)
这种调用格式返回A中由标量dim所指定的维数的累加和。例如:cumsum(A,1)返回的是沿着第一维(各列)的累加和,cumsum(A,2)返回的是沿着第二维(各行)的累加和。
具体用法参考程序示例或matlab的帮助文档。
相关函数
cumprod, prod, sum
编辑本段程序示例
% cumsum example
clc
clear
A=[1;2;3;4;5];
cumsum(A) % A是一个向量
B=1:5;
cumsum(B) % A是一个数组
C = [1 2 3; 4 5 6];
cumsum(C,1)
cumsum(C,2)
% 构造一个多维数组
D = zeros(3, 3, 3);
D(:,:,2) = [1,2,3;4,5,6;7,8,9];
D(:,:,3) = ones(3,3)
cumsum(D)
sum 函数的例子
a1=[1,2,3;4,5,6;7,8,10]
sum(a1)= 12
b=[1,2,3]
sum(b)=6
c=[1,2,3]'
sum(c)=6