cumsum

cumsum

cumsum是matlab中一個函式,通常用於計算一個數組各行的累加值,函式用法是B = cumsum(A,dim),或B = cumsum(A)。

函式簡介

函式功能

調用格式及說明

格式一:B = cumsum(A)

這種用法返回數組不同維數的累加和。

為了便於接下來的敘述,解釋一下matlab中矩陣、數組、向量的概念:

首先,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是一個向量

%結果:ans =

%1

%3

%6

%10

%15

B=1:5;

cumsum(B) % B是一個數組

%結果:

%ans =

%1 3 6 10 15

C = [1 2 3; 4 5 6];

cumsum(C,1)

%結果:

%ans =

%1 2 3

%5 7 9

cumsum(C,2)

%結果:

%ans =

%1 3 6

%4 9 15

% 構造一個多維數組

D = zeros(3, 3, 3);

D(:,:,2) = [1,2,3;4,5,6;7,8,9];

D(:,:,3) = ones(3,3)

cumsum(D)

%結果:

%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

相關詞條

相關搜尋

熱門詞條

聯絡我們