解説
相加平均とは、すべての標本の合計値を標本数で割った数を指します。
普段、テストの平均点などを出すときに使われる「平均」と同じ意味です。
中央値とは、全標本のうちちょうど真ん中の順位[ref]標本数が偶数の場合は、真ん中に最も近い2つの標本の数値を足して、2で割った数値を中央値として採用します[/ref]にある標本の数値を指します。中央値のことを、メディアン、メジアンとも呼びます。
最頻値とは、データ群や確率分布で最も頻繁に出現する値を指します。
最頻値のことを、モードとも呼びます。
ステップアップ
平均値は、測定ミスなどによって発生する外れ値(他の値より異常に大きい・小さい値)に影響されるため、大きな誤差を生み出したり、統計的に無意味な値になることがあります。そのため、刈り込み平均[ref]極端な数値の影響を少なくするために、値を大きさの順に並べ、両側から同数ずつ削除してから平均を求めること[/ref]を取るなどの対策が必要になることが知られています。
一方で、中央値は外れ値にほとんど影響されないため、そのような対策は不要である利点があります。
キーワード
- 相加平均
- 中央値
- 最頻値
- *外れ値
- *刈り込み平均
ソースコード
mean.py:相加平均を求めるプログラム
#coding:utf-8 import numpy as np # データ list = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) def mean(): # 平均値の計算 mean = np.mean(list) # 結果の表示 print(u"平均値:"+str(mean)) if __name__ == '__main__': mean()
このプログラムを実行すると、与えられた配列の平均を算出します。
平均値:5.5
median.py:中央値を求めるプログラム
#coding:utf-8 import numpy as np # データ list = np.array([10, 20, 50, 100, 100000]) def median(): # 中央値の計算 median = np.median(list) # 結果の表示 print(u"中央値:"+str(median)) if __name__ == '__main__': median()
このプログラムを実行すると、与えられた配列の中央値を算出します。
中央値:50.0
mode.py:最頻値を求めるプログラム
#coding:utf-8 import scipy.stats as spstat import numpy as np # データ list = np.array([10, 20, 20, 20, 20,20,100,1000,4000]) def mode(): # 中央値の計算 mode = spstat.mode(list) # 結果の表示 print(u"最頻値:"+str(mode)) if __name__ == '__main__': mode()
このプログラムを実行すると、与えられた配列の最頻値を算出します。(最頻値の個数も表示される)
最頻値:(array([ 20.]), array([ 5.]))
データセット
ー