ExcelのMEDIAN関数|中央値の求め方と平均値との違い

スポンサーリンク

「Excelで平均を出したのに、どうもピンとこない」……そんな経験はありませんか。

たとえば5人の月収の平均が47万円。でも実際に見ると、ほとんどの人は30万円前後で、1人だけ120万円の高額所得者がいる。平均値が実態とかけ離れてしまうのは、外れ値に引っ張られるからです。

こんなときに頼れるのが MEDIAN関数 です。この記事では、ExcelのMEDIAN関数の使い方を基本から解説します。平均値との違いや、条件付き中央値、フィルター後の中央値まで、実務で役立つテクニックをまるごと紹介しますよ。

MEDIAN関数とは?

MEDIAN関数(読み方: メジアン)は、数値の中央値を返す関数です。英語の「Median(中央値)」がそのまま関数名になっています。

中央値とは、データを小さい順に並べたときにちょうど真ん中にくる値のこと。AVERAGE関数の平均値とは計算方法がまったく異なります。

中央値の最大の特長は 外れ値の影響をほとんど受けない ことです。給与データや不動産価格など、一部に極端な値が含まれるデータでは、平均値より実態に近い「代表値」を出せます。

すべてのExcelバージョンとMicrosoft 365に対応しています。

MEDIAN関数の書き方(構文と引数)

基本構文

=MEDIAN(数値1, [数値2], ...)

カッコの中に中央値を求めたい数値やセル範囲を指定します。引数はカンマ区切りで最大255個まで追加できます。

引数の説明

引数必須/任意説明
数値1必須中央値を求める数値・セル参照・セル範囲
数値2, …任意追加の数値やセル範囲(最大255個)

引数にはセル範囲(例: B2:B6)を指定するのが一般的です。テキスト・論理値(TRUE/FALSE)・空白セルは自動的に無視され、数値だけが計算対象になります。

ただしエラー値が1つでも含まれるとエラーを返すので注意してください。エラーの対処法はこの記事の後半で解説します。

MEDIAN関数の基本的な使い方

ここからは実際の数式を見ていきましょう。サンプルデータとして、5人の月収(万円)がB2:B6に入っているとします。

セル社員月収(万円)
B2Aさん25
B3Bさん28
B4Cさん30
B5Dさん32
B6Eさん120

昇順に並べると 25, 28, 30, 32, 120 です。この順番を頭に入れておくと結果を確認しやすくなりますよ。

データが奇数個の場合

=MEDIAN(B2:B6)

結果は 30 です。データが5個(奇数)なので、ちょうど真ん中の3番目の値がそのまま返ります。

小さい順に並べて確認してみましょう。

25, 28, 30, 32, 120

3番目の30が中央値です。120という外れ値があっても、結果は引っ張られていません。ここがMEDIAN関数の強みですね。

データが偶数個の場合

Eさん(120万)を除いた4人分のデータで試してみます。

=MEDIAN(B2:B5)

結果は 29 です。データが4個(偶数)の場合、真ん中の2つの値の平均が返ります。

25, 28, 30, 32

中央の2つは28と30。(28+30)÷2 = 29 が中央値になるわけです。

複数の離れた範囲を指定する

1月と3月のデータだけで中央値を出したい、という場面もありますよね。離れた範囲はカンマで区切って指定できます。

=MEDIAN(B2:B6, D2:D6)

この式はB2:B6とD2:D6のすべての数値をまとめて中央値を計算します。間の列は無視されるので、必要なデータだけを選べます。

個別のセルを混ぜることもできます。

=MEDIAN(B2:B6, D3, F5)

中央値と平均値の違い|どちらを使うか判断フロー

MEDIAN関数とAVERAGE関数、どちらを使うべきか迷う場面は多いですよね。ここでは、同じデータで両者を比較しながら違いを確認していきましょう。

計算方法の違いを具体例で確認

先ほどの5人の月収データで比較します。

関数数式結果計算方法
中央値=MEDIAN(B2:B6)30データを並べて真ん中の値
平均値=AVERAGE(B2:B6)47合計(235)÷個数(5)

平均値は47万円ですが、実際に47万円以上もらっている人はEさん(120万円)だけ。残り4人は全員47万円を下回っています。

一方、中央値の30万円は5人のちょうど真ん中。大多数の実感に近い値が出ていますよね。

このズレが起きるのは、AVERAGE関数すべての値を合計して割るため、120万円という外れ値に大きく引っ張られるからです。MEDIAN関数は並び順の真ん中を取るだけなので、外れ値の影響をほとんど受けません。

「平均か中央値か」判断フロー

どちらを使うか迷ったら、次の3ステップで判断できます。

ステップ1: 外れ値はあるか?
データの中に極端に大きい(または小さい)値がないか確認します。MAX関数MIN関数で最大値・最小値を見るだけでも判断できます。

ステップ2: 外れ値がなければ → AVERAGE関数
データがおおむね均等に分布しているなら、平均値のほうが情報量が多く適しています。テストの平均点や日別アクセス数の集計などが典型例です。

ステップ3: 外れ値があれば → MEDIAN関数
給与・年収、不動産価格、顧客単価など、一部に極端な値が含まれやすいデータでは中央値が向いています。「典型的な値」を知りたい場面ではMEDIAN関数を選びましょう。

両方出しておくのがベスト

実務ではAVERAGEとMEDIANの両方を併記するのがおすすめです。2つの差が大きいほどデータの偏りが大きいと判断でき、分析の精度が上がります。

MEDIAN関数の実務活用パターン

基本の使い方がわかったところで、一歩進んだテクニックを見ていきましょう。

条件付き中央値(IF+配列数式)

「部署ごとの中央値を出したい」など、条件を付けて中央値を計算する場面があります。MEDIAN関数にはAVERAGEIF関数のような条件付き版がありません。代わりにIF関数を組み合わせた配列数式を使います。

A列に部署名、B列に月収が入っている場合の例です。

=MEDIAN(IF(A2:A100="営業部", B2:B100))

この数式は、A列が「営業部」の行だけを抽出して中央値を計算します。

Excel 2019以前をお使いの方は、Enterではなく Ctrl+Shift+Enter で確定してください。数式バーに {=MEDIAN(IF(...))} と波カッコが付けばOKです。Microsoft 365やExcel 2021以降なら、通常のEnterで動作します。

0を除く中央値の注意点

アンケートの未回答を0で入力している場合など、0を除いて中央値を出したい場面があります。MEDIAN関数はゼロ値を計算に含めるため、そのまま使うと結果がズレてしまいます。

0を除くには、先ほどと同じIF関数との組み合わせが使えます。

=MEDIAN(IF(B2:B100>0, B2:B100))

条件を B2:B100>0 にすることで、0より大きい値だけが対象になります。こちらもExcel 2019以前ではCtrl+Shift+Enterが必要です。

0を除くべきかは慎重に判断

0が「未回答」や「欠損」を意味するなら除外が正解です。しかし0が実際の計測値(例: 売上0円の日)であれば、除外すると分析が偏ります。データの意味を確認してから判断しましょう。

フィルター後の中央値はAGGREGATE関数で

オートフィルターで絞り込んだ後に中央値を出したい場面もよくあります。しかし、MEDIAN関数はフィルターで非表示にした行も含めて計算してしまいます。

SUBTOTAL関数で解決したくなりますが、残念ながらSUBTOTALにはMEDIANの機能番号がありません。ここで使うのがAGGREGATE関数です。

=AGGREGATE(12, 5, B2:B100)
引数意味
第1引数12集計関数の種類(12 = MEDIAN)
第2引数5オプション(5 = 非表示行を無視)
第3引数B2:B100対象のセル範囲

第2引数のオプションを変えると、動作を細かく制御できます。

オプション値動作
5非表示行を無視(フィルター向き)
6エラー値を無視
7非表示行+エラー値を両方無視

フィルター後の中央値ならオプション 5 がおすすめです。エラー値も混在している場合は 7 を使ってください。

ROUND関数で小数点を丸める

MEDIAN関数の結果に小数点が出ることがあります。偶数個のデータで中央2値の平均を計算するときです。

小数点以下を丸めたい場合はROUND関数で囲みましょう。

=ROUND(MEDIAN(B2:B100), 0)

第2引数の 0 は小数点以下を四捨五入する指定です。小数第1位まで残したい場合は 1 に変えてください。

よくあるエラーと対処法

MEDIAN関数を使っていて遭遇しやすいエラーをまとめました。

エラー原因対処法
#VALUE!範囲内にテキストを直接入力しているセル参照に切り替える。テキストが混在するセルを確認して修正する
#NUM!数値がひとつもない範囲を指定している対象範囲にデータが入っているか確認する
#NAME?関数名のスペルミス(例: MEADIAN)MEDIAN と正しく入力する
エラー値伝播範囲内に#N/Aや#REF!があるエラーセルを修正するか、AGGREGATE(12, 6, 範囲) で回避

エラー値が混在する場合は、IFERROR関数で個別にケアするか、先述のAGGREGATE関数(オプション6)で丸ごと無視するのが実用的です。

=AGGREGATE(12, 6, B2:B100)

テキストが数値に見えるのに計算されない場合は、文字列として保存されている可能性があります。VALUE関数で数値に変換すると解決できます。

似た関数との違い・使い分け

MEDIAN関数と混同しやすい関数を整理しておきましょう。

関数何を返すか使いどころ
AVERAGE算術平均データが均等に分布しているとき
MEDIAN中央値外れ値や偏りがあるとき
MODE最頻値(最も多く出現する値)アンケートの回答分布などを見るとき
QUARTILE四分位数データの散らばり具合を把握するとき
RANK順位個々の値の順位を知りたいとき
SMALL / LARGEN番目に小さい/大きい値特定の順位の値を取り出したいとき

ちなみに、QUARTILE関数の第2引数に2を指定すると中央値が返ります。=QUARTILE(B2:B6, 2)=MEDIAN(B2:B6) は同じ結果です。ただし可読性ではMEDIAN関数を使うほうが意図が伝わりやすいでしょう。

条件付きの平均を出したい場合はAVERAGEIF関数、最大値・最小値の条件付き集計ならMAXIFS関数MINIFS関数が用意されています。

まとめ

ExcelのMEDIAN関数は、データの中央値を求める関数です。外れ値に強く、「典型的な値」を知りたいときに役立ちます。

この記事のポイントをおさらいしましょう。

  • MEDIAN関数はデータを並べて真ん中の値を返す
  • 偶数個のデータでは中央2値の平均になる
  • 外れ値があるデータでは平均値より実態に近い結果を出せる
  • 条件付き中央値はIF関数との配列数式で対応
  • フィルター後の中央値はAGGREGATE関数(12, 5)を使う

日常の集計でAVERAGE関数だけに頼っていた方は、ぜひMEDIAN関数も併用してみてください。2つの差を見るだけで、データの偏りが一目で分かるようになりますよ。

他のExcel関数も知りたい方はExcel関数一覧をチェックしてください。目的から探したい場合は機能別検索が便利です。

タイトルとURLをコピーしました