Pythonのaverage関数で平均を求める方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonのaverage関数で平均を求める方法について現役エンジニアが解説しています。averageはNumPyで(加重)平均を求めるためのメソッドです。axis引数で行列を対象にして平均を求めることが、weights引数を指定すると重み付けを考慮した加重平均を計算できます。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Pythonのaverage関数で平均を求める方法について解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonのaverage関数で平均を求める方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

NumPyのaverage関数とは

averageはNumPyで(加重)平均を求めるためのメソッドです。
 

基本的な使い方

単に配列(行列)を引数に指定すると、配列中の数値の平均を計算します。

axis引数を指定すると、行列を対象に平均を計算できます。
weights引数を指定すると、重み付けを考慮した加重平均を計算できます。

 

import numpy
numpy.average(a) # 配列(行列)aの平均を計算する

 

[PR] Pythonで挫折しない学習方法を動画で公開中

実際に書いてみよう

ソースコード

import numpy

a = numpy.array(range(6))
print(a)
print(numpy.average(a))

b = a.reshape(3,2)
print(b)
print(numpy.average(b, axis=1, weights=[1/4, 3/4]))

 

実行結果

[0 1 2 3 4 5]
2.5
[[0 1]
 [2 3]
 [4 5]]
[0.75 2.75 4.75]

 

解説

1行目でnumpyモジュールをインポートしました。

1つ目のブロックでは、配列を対象に操作しました。
配列aを作成しprintすると、[0 1 2 3 4 5]の出力を得ました。
averageメソッドを呼び出すと、これら数字の平均である2.5を得ました。

2つ目のブロックでは、行列を対象に操作しました。
先に作成した配列aを、3行x2列の行列bに変換しました。
averageメソッドで、行列bの加重平均を計算しました。1列目の重みに1/4、2列目の重みに3/4を指定しました。
 

監修してくれたメンター

橋本紘希

システムインテグレータ企業勤務のシステムエンジニア。

開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。