Python Numpy.mean()-算術平均

  1. numpy.mean() の構文
  2. コード例:1 次元配列の numpy.mean()
  3. コード例:2 次元配列の numpy.mean()
  4. コード例: dtype が指定された numpy.mean()

Numpy.mean() 関数は、指定された軸に沿って、または口語的に、指定された配列の算術平均を計算します。

numpy.mean() の構文

numpy.mean(arr, axis=None, dtype=float64) 

パラメーター

arr array_like
算術平均を計算する入力配列
axis Noneint、または tuple
算術平均が計算される軸。
axis = 0 は列に沿って計算された算術平均を意味し、
axis = 1 は行に沿って算術平均を意味します。
axis が指定されていない場合、多次元配列はフラットリストとして扱われます
dtype dtype または None
算術平均の計算中に使用されるデータ型。デフォルトは float64 です

戻り値

これは、指定された配列の算術平均、または指定された軸に沿った算術平均を持つ「配列」を返します。

コード例:1 次元配列の numpy.mean()

import numpy as np

arr = [10, 20, 30]
print("1-D array :", arr)
print("Mean of arr is ", np.mean(arr))

出力:

1-D array : [10, 20, 30]
Mean of arr is  20.0

コード例:2 次元配列の numpy.mean()

import numpy as np

arr = [[10, 20, 30],
       [3, 50, 5],
       [70, 80, 90],
       [100, 110, 120]]

print("Two Dimension array :", arr)
print("Mean with no axis :", np.mean(arr))
print("Mean with axis along column :", np.mean(arr, axis=0))
print("Mean with axis aong row :", np.mean(arr, axis=1))

出力:

Two Dimension array : [[10, 20, 30], [3, 50, 5], [70, 80, 90], [100, 110, 120]]
Mean with no axis : 57.333333333333336
Mean with axis along column : [45.75 65.   61.25]
Mean with axis aong row : [ 20.          19.33333333  80.         110.        ]
>>

np.mean(arr) は入力配列を平坦化された配列として扱い、この 1 次元の平坦化された配列の算術平均を計算します。

np.mean(arr, axis = 0) は列に沿って算術平均を計算します。

np.std(arr, axis = 1) は行に沿って算術平均を計算します。

コード例: dtype が指定された numpy.mean()

import numpy as np

arr = [10.12, 20.3, 30.28]
print("1-D Array :", arr)
print("Mean of arr :", np.mean(arr))
print("Mean of arr with float32 data :", np.mean(arr, dtype = np.float32))
print("Mean of arr with float64 data :", np.mean(arr, dtype = np.float64))

出力:

1-D Array : [10.12, 20.3, 30.28]
Mean of arr : 20.233333333333334
Mean of arr with float32 data : 20.233332
Mean of arr with float64 data : 20.233333333333334

numpy.mean() 関数で dtype パラメーターが指定されている場合、算術平均の計算中に指定されたデータ型が使用されます。

デフォルトの float64 ではなく float32 データ型を使用すると、結果の解像度が低くなります。

comments powered by Disqus