Excelで「平均」というと「AVERAGE」関数を思い浮かべるかもしれませんが、ときとして他の平均処理が必要なときもあります。
平均には AVERAGE関数で行う「算術平均(相加平均)」のほかに

  • 加重平均
  • 幾何平均(相乗平均)
  • 調和平均
  • トリム平均
  • 移動平均

などがあります。

ここでは、加重平均と移動平均について Excel関数での演算方法をご紹介します。

簡単な例ですが、下図の表を使ってみます。

 

これらの商品の平均価格(単価)は、「単価」列のデータについて「=AVERAGE([単価])」とすれば「\150」と求まります。
でも、各商品の販売数が違いますから、販売数を加味して平均を求めてみます。
つまり、販売数量の大きさによる重みづけして平均を求めます。
これが「加重平均」です。

この表の販売総数は 175個です。
各商品の売上数の割合を、各商品単価に掛け合わせます。
 キャベツ:\200×(13÷175)=14.9
 バナナ:\140×(40÷175)=32.0
 大根:\160×(21÷175)=19.2
 りんご:\100×(55÷175)=31.4
 みかん:\120×(26÷175)=17.8
 レタス:\180×(20÷175)=20.6

これらの計算値を合計しますと「135.9」となります。
これが、加重平均による販売した商品の平均単価です。

これを別の求め方で求めてみます。
下図のように、「単価×数量」列を設け、各商品の単価×数量を求めます。

 

それらの総合計は「\23,780」となり、これを総数で割ると「135.9」となります。

この方法は「SUMPRODUCT」関数を使って求めることができます。
SUMPRODUCT関数の書式は、以下のようになります:
  =SUMPRODUCT(array1, [array2], [array3], ...)

空白セルに「=SUMPRODUCT(販売数[単価],販売数[数量])」と入力すると「23780」と求まります。(「販売数」は上図のテーブルの名前です。)


 

これを販売総数「175」で割れば「135.9」と加重平均が求まります。

次に、移動平均の様子を見てみます。

下図の表データは過去 1年間の毎日のデータです。

 

ある日の加重平均を求めます。
例えば、C5セルに「=SUMPRODUCT(B1:B5,$E$1:$E$5)/SUM($E$1:$E$5)」と入力し、一番下のセルまでコピーします。

つまり、C5セルは過去 5日間のデータ B1~B5セルに、それぞれ E1~E5セルに格納された重みづけをしながら加重平均しています。
当日の重みが一番大きくて、過去に行くほどその重みを減じています。

この加重平均処理を日にちをずらしながら次々と演算していきますので「加重移動平均」と呼びます。

B列の元データと、C列の加重移動平均データをグラフに表わしてみると、下図のようになります。

 

E1~E5セルの重みデータを、すべて「1」としたときは「単純移動平均」と呼ばれます。

E1~E5セルの重みデータの個数やその値については、演算目的により変わります。
例えば、上記のように 5日間の加重移動平均線と単純移動平均線は株価の短期線としてよく使われ、これを 75日間としたものは中期線と呼ばれます。
また、信号処理などで使われる FIR(Finite Impulse Response)フィルタの係数として、この重みデータをセットすれば、さまざまなフィルタ処理ができます。

なお、Excelの折れ線グラフには単純移動平均とするオプションがあります。
グラフ上で元データのグラフの上で右クリックし [近似曲線の追加]を選択し、現れた「近似曲線の書式設定」ダイアログで「移動平均」を選択するとグラフ上に追加表示されます。(下図)