Python Statistics モジュール

statistics モジュールは、平均値、中央値、その他の記述統計を計算するための簡単なツールを提供します。

このモジュールは Python 3.4 で追加されました。

import statistics

少数の数値に対してよくある計算をしたいときに statistics を使います。高度なデータ分析には NumPy や pandas のほうが強力ですが、標準ライブラリには含まれていません。

mean()

import statistics

scores = [80, 90, 95, 100]
print(statistics.mean(scores))
91.25

fmean は浮動小数点の平均を返し、数値データではより高速なことが多いです。

import statistics

print(statistics.fmean([1, 2, 3]))
2.0

median()

import statistics

values = [1, 3, 5, 100]
print(statistics.median(values))
4.0

mode()

mode は最頻値を返します。

import statistics

print(statistics.mode(['python', 'python', 'rust']))
python

最頻値が複数ある場合は、multimode がそれらをすべて返します。

import statistics

print(statistics.multimode(['red', 'blue', 'red', 'blue']))
['red', 'blue']

stdev()

stdev は標本標準偏差を計算します。

import statistics

print(round(statistics.stdev([2, 4, 4, 4, 5, 5, 7, 9]), 2))
2.14

空のデータを扱う

ほとんどの関数は、空の入力に対して StatisticsError を送出します。

import statistics

try:
    statistics.mean([])
except statistics.StatisticsError as error:
    print(type(error).__name__)
StatisticsError

関連リンク