Pythonでのnumpy.sum()関数

Pythonのnumpy sum()関数は、指定された軸に沿って配列要素の合計を取得するために使用されます。

Pythonのnumpy sum()関数の構文

Python NumPy sum()メソッドの構文は次のようになります:

sum(array, axis, dtype, out, keepdims, initial)
  • 配列の要素は合計を計算するために使用されます。
  • 軸が指定されていない場合、すべての要素の合計が返されます。軸がintのタプルである場合、指定された軸のすべての要素の合計が返されます。
  • 返される出力データ型を指定するためにdtypeを指定できます。
  • out変数は結果を配置する配列を指定するために使用されます。これはオプションのパラメータです。
  • keepdimsはブール型のパラメータです。これがTrueに設定されている場合、削減された軸は結果に次元として1のサイズを持ったままです。
  • initialパラメータは、合計の開始値を指定します。

Pythonのnumpy sum()の例

numpy sum()関数のいくつかの例を見てみましょう。

1. 配列のすべての要素の合計

関数sum()に配列のみを渡すと、それがフラット化され、すべての要素の合計が返されます。

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4],
     [5, 6]])

total = np.sum(array1)
print(f'Sum of all the elements is {total}')

出力: すべての要素の合計は21です

2. 軸に沿った配列要素の合計

軸の値を指定すると、その軸に沿った要素の合計が返されます。配列の形状が(X、Y)の場合、0軸に沿った合計は形状(1、Y)になります。1軸に沿った合計は形状(1、X)になります。

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4],
     [5, 6]])

total_0_axis = np.sum(array1, axis=0)
print(f'Sum of elements at 0-axis is {total_0_axis}')

total_1_axis = np.sum(array1, axis=1)
print(f'Sum of elements at 1-axis is {total_1_axis}')

出力:

Sum of elements at 0-axis is [ 9 12]
Sum of elements at 1-axis is [ 3  7 11]

3. 合計の出力データ型の指定

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4]])

total_1_axis = np.sum(array1, axis=1, dtype=float)
print(f'Sum of elements at 1-axis is {total_1_axis}')

出力: 1軸の要素の合計は[3. 7.]です

4. 合計の初期値

import numpy as np

array1 = np.array(
    [[1, 2],
     [3, 4]])

total_1_axis = np.sum(array1, axis=1, initial=10)
print(f'Sum of elements at 1-axis is {total_1_axis}')

出力: 1軸の要素の合計は[13 17] 参考: APIドキュメント

Source:
https://www.digitalocean.com/community/tutorials/numpy-sum-in-python