Main Content

sum

説明

S = sum(A) は、サイズが 1 より大きい最初の配列の次元に沿った A の要素の総和を返します。

  • A がベクトルの場合、sum(A) は要素の和を返します。

  • A が行列の場合、sum(A) は各列の和を含む行ベクトルを返します。

  • A が多次元配列の場合、sum(A) は、サイズが 1 より大きい最初の配列次元に沿って演算し、要素をベクトルとして扱います。この次元における S のサイズは 1 になりますが、他のすべての次元のサイズは A と同じままです。

  • A が table または timetable の場合、sum(A) は、各変数の総和を含む 1 行の table を返します。 (R2023a 以降)

S = sum(A,"all") は、A のすべての要素の総和を返します。

S = sum(A,dim) は、次元 dim に沿った和を返します。たとえば、A が行列の場合、sum(A,2) は各行の総和をもつ列ベクトルを返します。

S = sum(A,vecdim) は、ベクトル vecdim で指定された次元に基づいて A の要素を合計します。たとえば、A が行列の場合、行列内の各要素は次元 1 と次元 2 で定義された配列スライスに含まれるため、sum(A,[1 2])A のすべての要素の総和を返します。

S = sum(___,outtype) は前述の構文の入力引数のいずれかを使って、指定されたデータ型で総和を返します。outtype"default""double" または "native" になります。

S = sum(___,nanflag) は、ANaN 値を含めるか省略するかを指定します。たとえば、sum(A,"omitnan") は総和の計算時に NaN 値を無視します。既定では、sumNaN 値を含めます。

すべて折りたたむ

ベクトルを作成し、その要素の和を計算します。

A = 1:10;
S = sum(A)
S = 55

行列を作成し、各列の要素の和を計算します。

A = [1 3 2; 4 2 5; 6 1 4]
A = 3×3

     1     3     2
     4     2     5
     6     1     4

S = sum(A)
S = 1×3

    11     6    11

行列を作成し、各行の要素の和を計算します。

A = [1 3 2; 4 2 5; 6 1 4]
A = 3×3

     1     3     2
     4     2     5
     6     1     4

S = sum(A,2)
S = 3×1

     6
    11
    11

ベクトル次元引数を使用して配列の特定のスライスを演算します。

要素が 1 の 3 次元配列を作成します。

A = ones(4,3,2);

A の各ページのすべての要素を合計するには、ベクトル次元引数を使用して行と列を合計する次元を指定します。両方のページが 4 行 3 列の 1 の行列であるため、各ページの合計は 12 になります。

S1 = sum(A,[1 2])
S1 = 
S1(:,:,1) =

    12


S1(:,:,2) =

    12

A を最初の次元に沿ってスライスする場合は、それぞれ 3 行 2 列の行列となる結果の 4 ページの要素を合計できます。

S2 = sum(A,[2 3])
S2 = 4×1

     6
     6
     6
     6

2 つ目の次元に沿ってスライスすると、各ページの総和は 4 行 2 列の行列を超えます。

S3 = sum(A,[1 3])
S3 = 1×3

     8     8     8

配列のすべての次元の総和を計算するには、ベクトルの次元引数で各次元を指定するか、"all" オプションを使用します。

S4 = sum(A,[1 2 3])
S4 = 24
Sall = sum(A,"all")
Sall = 24

4×2×3 の ones の配列を作成し、3 番目の次元に沿って和を計算します。

A = ones(4,2,3);
S = sum(A,3)
S = 4×2

     3     3
     3     3
     3     3
     3     3

32 ビット整数のベクトルを作成し、出力の型を native に指定して、ベクトル要素の int32 の和を計算します。

A = int32(1:10);
S = sum(A,"native")
S = int32
    55

NaN 値を含む行列を作成します。

A = [1.77 -0.005 NaN -2.95; NaN 0.34 NaN 0.19]
A = 2×4

    1.7700   -0.0050       NaN   -2.9500
       NaN    0.3400       NaN    0.1900

NaN 値を除外して行列の総和を計算します。NaN 値が含まれている行列の列では、sumNaN 以外の要素で計算します。すべて NaN 値の行列の列では、総和は 0 です。

S = sum(A,"omitnan")
S = 1×4

    1.7700    0.3350         0   -2.7600

入力引数

すべて折りたたむ

入力配列。ベクトル、行列、多次元配列、table または timetable として指定します。

  • A がスカラーの場合、sum(A)A を返します。

  • A が 0 行 0 列の空の行列である場合、sum(A)0 を返します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | duration | table | timetable
複素数のサポート: あり

演算の対象の次元。正の整数のスカラーとして指定します。次元を指定しない場合、既定値はサイズが 1 より大きい最初の配列次元です。

次元 dim は、長さが 1 に縮小した次元を示します。size(S,dim)1 ですが、他のすべての次元のサイズは変化しません。

2 次元の入力配列 A について考えます。

  • sum(A,1) は、A の列の連続する要素に対して演算を行い、各列の和の行ベクトルを返します。

    sum(A,1) column-wise computation.

  • sum(A,2) は、A の行の連続する要素に対して演算を行い、各行の和の列ベクトルを返します。

    sum(A,2) row-wise computation.

sum は、dimndims(A) より大きいか、size(A,dim)1 である場合に A を返します。

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

次元のベクトル。正の整数のベクトルとして指定します。各要素は入力配列の次元を表します。指定された操作次元の出力の長さは 1 で、その他は同じままです。

2×3×3 の入力配列 A を考えます。この場合、sum(A,[1 2]) は、要素が A の各ページの総和となる 1×1×3 の配列を返します。

sum(A,[1 2]) collapses the pages of a 2-by-3-by-3 array into a 1-by-1-by-3 array.

データ型: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力データ型。"default""double" または "native" として指定します。これらのオプションにより、演算の実行に使用されるデータ型も指定されます。

outtype出力データ型
"default"double。ただし、入力データ型が singledurationtable、または timetable の場合は出力が "native" になります。
"double"double。ただし、データ型が durationtable、または timetable の場合は、"double" はサポートされません。
"native"入力と同じデータ型。ただし、入力データ型が char の場合は、"native" はサポートされません。また、入力データ型が timetable の場合は、出力データ型は table です。

欠損値の条件。次の値のいずれかとして指定します。

  • "includemissing" または "includenan" — 総和の計算時に ANaN 値を含めます。操作次元内のいずれかの要素が NaN の場合、S の対応する要素は NaN です。"includemissing""includenan" の動作は同じです。

  • "omitmissing" または "omitnan"ANaN 値を無視し、点の数を減らして総和を計算します。操作次元内のすべての要素が NaN の場合、S の対応する要素は 0 です。"omitmissing""omitnan" の動作は同じです。

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する

参考

| | |