Pythonで平均を計算する:実践ガイド
Pythonでの平均計算
数値データの平均(算術平均)を求めるのはデータ分析の基本タスクです。Pythonでは、全値の合計を値の個数で割ることで平均を計算します。以下に、手動ループからハイレベルなライブラリ関数まで、実証済みの複数の方法を紹介します。
forループを使った手動計算- 組み込み
sum()とlen()関数の利用 statisticsモジュールのmean()関数の活用- 配列ベースのデータに
numpy.mean()を使用
方法1:ループベースの計算
明示的なループは最大の制御を提供しますが、通常は組み込み関数より遅いです。それでも基本的なアプローチを示すために例を掲載します。
def calculate_average(numbers):
total = 0
for value in numbers:
total += value
return total / len(numbers)
print("The average is", calculate_average([18, 25, 3, 41, 5]))
出力: The average is 18.4
方法2:組み込み関数
Pythonのsum()とlen()を使って、平均を1行で計算する簡潔な方法です。
# リストの平均を求める例
numbers = [45, 34, 10, 36, 12, 6, 80]
avg = sum(numbers) / len(numbers)
print("The average is", round(avg, 2))
出力: The average is 31.86
方法3:statistics.mean()
標準ライブラリのstatisticsモジュールには、コードをさらにシンプルにするmean()関数が用意されています。
from statistics import mean
numbers = [45, 34, 10, 36, 12, 6, 80]
avg = mean(numbers)
print("The average is", round(avg, 2))
出力: The average is 31.86
方法4:NumPy.mean()
大規模データセットや多次元配列を扱う場合、NumPyのmean()が最適なパフォーマンスを発揮します。
from numpy import mean
numbers = [45, 34, 10, 36, 12, 6, 80]
avg = mean(numbers)
print("The average is", round(avg, 2))
出力: The average is 31.86
重要なポイント
- 平均は
sum(values) / len(values)で計算される。 - ユースケースに合わせて可読性とパフォーマンスのバランスが取れた方法を選択。
- シンプルなリストなら組み込み関数や
statistics.mean()が推奨。 - 大規模な数値配列なら
numpy.mean()を推奨。
Python
- 中古CNC工作機械の探し方:包括的ガイド
- VHDLで文字列リストを作成する: ベスト・プラクティスと実装例
- Pythonで現在の日付と時刻を取得する実践ガイド
- Python print()関数の実践ガイド:基本から応用まで
- Python String.find()メソッド完全ガイド:構文、例、代替手法
- Python print()で改行なし出力:endパラメータとその他のテクニック
- Pythonでファイル・ディレクトリの存在確認:実践ガイド
- Pythonリスト完全ガイド:追加、ソート、長さ、リスト内包表記(実践編)
- Python list.count() 完全ガイド:実践例付きで徹底解説
- Pythonリストから重複要素を削除する方法:順序保持と効率のバランス
- Pythonリストから要素を削除する方法:remove()、pop()、clear()、del