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的帮助文档。
Aaa =
1 2 3
4 5 6
>> cumsum(Aaa,1)
ans =
1 2 3
5 7 9
>> cumsum(Aaa,2)
ans =
1 3 6
4 9 15

相关函数

cumprod, prod, sum

程序示例编辑

% cumsum example
clc
clear
A=[1;2;3;4;5];
cumsum(A) % A是一个向量
B=1:5;
cumsum(B) % B是一个数组
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)
输出:
ans =
1
3
6
10
15
ans =
1 3 6 10 15
ans =
1 2 3
5 7 9
ans =
1 3 6
4 9 15
D(:,:,1) =
0 0 0
0 0 0
0 0 0
D(:,:,2) =
1 2 3
4 5 6
7 8 9
D(:,:,3) =
1 1 1
1 1 1
1 1 1
ans(:,:,1) =
0 0 0
0 0 0
0 0 0
ans(:,:,2) =
1 2 3
5 7 9
12 15 18
ans(:,:,3) =
1 1 1
2 2 2
3 3 3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值