Excel。上位20%までの平均値を算出するにはどうしたらいいの
<AVERAGEIF+PERCENTILE.INC関数>
単純に平均を算出するだけならば、オートSUMボタンの中にある、「平均」やAVERAGE関数を使えば、簡単に算出することができます。
ただ、データ量が増えたときなどに、上位20%の平均値を算出したい場合、どのようにしたら、算出することができるのでしょうか?
上位20%のデータを抽出してその平均値を算出すればいいわけですが、オートフィルターをつかったりして、抽出してから平均値を算出するというのも面倒ですね。
できれば数式一発で算出したいわけですね。
次の表をつかって確認していきます。
そこで、このデータは、データ全体の中で上位何パーセントの場所にあるのかを判断することができるのが、PERCENTILE.INC関数(パーセンタイル・インクルーシブ)です。
PERCENTILE.INC関数は、全体を100%として、「率」に相当する値を算出することができます。
なお、親戚筋というか、PERCENTILE.EXE関数(パーセンタイル・エクスクルーシブ)というのがあります。
こちらの関数は、百分位を数える時に、0%と100%を含めないで数えてしまいます。
そのため、PERCENTILE.INC関数を使用します。
E2には、次の数式を設定しました。
=AVERAGEIF(B2:B11,">="&PERCENTILE.INC(B2:B11,80%))
これで、上位20%までの平均値を算出することができます。
AVERAGEIF関数をつかいます。
2つ目の引数である条件で、PERCENTILE.INC関数を使うわけですが、「上位20%」なので、20%にしては、ダメです。
上位20%とは、全体を100%としたとき、80%の位置を指すわけですから、80%にする必要があります。
あとは、比較演算子と数式を結合するために、比較演算子の「>=」を「”(ダブルコーテーション)」で囲み、「&(アンパサンド)」で結合する必要がありますので、数式を作るときに、注意が必要ですね。