web-dev-qa-db-ja.com

python numpy ndarray要素ごとの平均

Numpy ndarrayの要素ごとの平均を計算したいと思います。

In [56]: a = np.array([10, 20, 30])

In [57]: b = np.array([30, 20, 20])

In [58]: c = np.array([50, 20, 40])

私が欲しいもの:

[30, 20, 30]

ベクトル化された合計と除算以外に、この操作のための組み込み関数はありますか?

21
Aerin

np.meanを直接使用できます:

>>> np.mean([a, b, c], axis=0)
array([ 30.,  20.,  30.])
32
aldanor

Pandas DataFramesには、列および行の平均を取得するための操作が組み込まれています。次のコードが役立ちます。

import pandas and numpy
import pandas as pd
import numpy as np

# Define a DataFrame
df = pd.DataFrame([
np.arange(1,5), 
np.arange(6,10),
np.arange(11,15)
])

# Get column means by adding the '.mean' argument
# to the name of your pandas Data Frame
# and specifying the axis

column_means = df.mean(axis = 0)

'''
print(column_means)

0    6.0
1    7.0
2    8.0
3    9.0
dtype: float64
'''   

# Get row means by adding the '.mean' argument
# to the name of your pandas Data Frame
# and specifying the axis

row_means = df.mean(axis = 1)
'''
print(row_means)

0     2.5
1     7.5
2    12.5
dtype: float64
'''
2
Agarp