【Python入門】データ平均|色々な種類の平均を学ぶ

データ平均|色々な種類の平均を学ぶ_アイキャッチプログラミング

※ 当サイトはアフィリエイト広告を利用しています。

levtech-ad
スポンサーリンク

Pythonによる統計処理の基本として、「データ平均」があります。

本記事では、そんなPython基礎となるデータ平均について、詳しくご説明します。

こんな人に読んでほしい
  • Python初心者の人
  • Pythonによるデータ平均処理の方法を学びたい人
levtech-ad

算術平均

算術平均(相加平均)とは、データの個数と合計を保ったまま、平均した値のことです。

以下に算術平均の方法をご紹介します。

statistics.mean()

statisticsモジュールのstatistics.mean()を使用して、算術平均を計算できます。

以下に例を載せます。

#input
import statistics as st
from fractions import Fraction as F

from decimal import Decimal as D

x1 = [1,2,3,4,5]
m1 = st.mean(x1)

x2 = [F(1,2),F(2,3),F(3,4)]
m2 = st.mean(x2)

x3 = [D("3.51"),D("6.72"),D("9.06")]
m3 = st.mean(x3)

print("整数平均:{}".format(m1))
print("分数平均:{}".format(m2))
print("小数平均:{}".format(m3))
#output
整数平均:3
分数平均:23/36
小数平均:6.43

numpy.mean()

NumPyのnumpy.mean()を使用することで、データ配列の算術平均を計算できます。

以下に例を載せます。

#input
import numpy as np

X1 = np.array([1,2,3,4,5])
M1 = np.mean(X1)

X2 = np.array([[1,11,111],
               [2,22,222],
               [3,33,333]])
M2 = np.mean(X2,axis = 0)
M3 = np.mean(X2,axis = 1)

print("X1の配列平均:{}".format(M1))
print("X2の配列平均(列):{}".format(M2))
print("X2の配列平均(行):{}".format(M3))
#output
X1の配列平均:3.0
X2の配列平均(列):[  2.  22. 222.]
X2の配列平均(行):[ 41.  82. 123.]

加重平均

加重平均とは、各データに重み付けをした上で、平均した値のことです。

加重平均は以下の手法で計算できます。

numpy.average()

NumPyのnumpy.average()を使用することで、データ配列の加重平均を計算できます。

引数にweightsを指定することで、各配列データに重み付けします。

以下に例を載せます。

#input
import numpy as np

X1 = np.array([1,2,3,4,5])
W1 = np.array([9,8,7,6,5])
M1 = np.average(X1,weights = W1)

X2 = np.array([[10,20],
               [30,40],
               [50,60]])
M2 = np.average(X2,axis = 1,weights = [2,3])

print("X1の加重平均:{}".format(M1))
print("X2の加重平均:{}".format(M2))
#output
X1の加重平均:2.7142857142857144
X2の加重平均:[16. 36. 56.]

調和平均

調和平均とは、逆数の算術平均の逆数のことです。

調和平均は以下の手法で計算できます。

statistics.harmonic_mean()

statisticsモジュールのstatistics.harmonic_mean()を使用して、調和平均を計算できます。

#input
from statistics import harmonic_mean as hm

X = [50,150]
M = hm(X)

print("Xの調和平均:{}".format(M))
#output
Xの調和平均:75.0

scipy.stats.hmean()

SciPyのscipy.stats.hmean()を使用すると、下例のように配列の調和平均が計算できます。

#input
import numpy as np
from scipy.stats import hmean as hm

X = np.array([[1,11,111],
               [2,22,222],
               [3,33,333]])

M1 = hm(X,axis = 0)
M2 = hm(X,axis = 1)

print("Xの調和平均(列):{}".format(M1))
print("Xの調和平均(行):{}".format(M2))
#output
Xの調和平均(列):[  1.63636364  18.         181.63636364]
Xの調和平均(行):[2.7274758 5.4549516 8.1824274]

幾何平均

幾何平均(相乗平均)とは、データ値の総乗の\(n\)乗根のことです。

幾何平均は以下の手法で計算できます。

scipy.stats.mstats.gmean()

SciPyのscipy.stats.mstats.gmean()を使用すると、幾何平均が計算できます。

#input
import numpy as np
from scipy.stats.mstats import gmean as gm

X1 = [10,30,50,70,90]
M1 = gm(X1)

X2 = np.array([[10,20,30],
               [40,50,60],
               [70,80,90]])
M2 = gm(X2,axis = 0)
M3 = gm(X2,axis = 1)

print("X1の幾何平均:{}".format(M1))
print("X2の幾何平均(列):{}".format(M2))
print("X2の幾何平均(行):{}".format(M3))
#output
X1の幾何平均:39.36283427035351
X2の幾何平均(列):[30.36588972 43.0886938  54.51361778]
X2の幾何平均(行):[18.17120593 49.32424149 79.58114416]

まとめ

この記事では、Python基礎となるデータ平均について、ご説明しました。

本記事を参考に、ぜひ試してみて下さい。

参考

Python学習用おすすめ教材

Pythonの基本を学びたい方向け

統計学基礎を学びたい方向け

Pythonの統計解析を学びたい方向け

おすすめプログラミングスクール

Pythonをはじめ、プログラミングを学ぶなら、TechAcademy(テックアカデミー)がおすすめです。

私も入っていますが、好きな時間に気軽にオンラインで学べますので、何より楽しいです。

現役エンジニアからマンツーマンで学べるので、一人では中々続かない人にも、向いていると思います。

無料体験ができますので、まずは試してみてください!

\まずは無料体験!/
スポンサーリンク
タイトルとURLをコピーしました