- 作成日 : 2025年8月25日
ExcelのMEDIAN関数の使い方:中央値の計算からデータ分析への活用まで
ExcelのMEDIAN関数は、一連の数値の中央に位置する値、つまり中央値を求めるための関数です。平均値(AVERAGE関数)と似ていますが、MEDIAN関数はデータの偏りの影響を受けにくいため、より実態に近い数値を把握したい場合に適しています。
この記事では、MEDIAN関数の基本的な使い方から、具体的な利用シーン、さらには応用例、そしてよくあるエラーとその対策まで、Excel初心者の方にもわかりやすく解説します。
目次
MEDIAN関数の使い方
MEDIAN関数は、指定した範囲内の数値データの中から中央値を取得する関数です。基本的な書式は以下の通りです。
=MEDIAN(数値1, [数値2], …)
数値1, [数値2], …:中央値を計算したい数値、または数値が入力されているセル範囲を指定します。最大255個の引数を指定できます。
具体的な操作手順
- 中央値を表示したいセルを選択します。
- 数式バーに「=MEDIAN(」と入力します。
- 中央値を計算したい数値が含まれるセル範囲(例: A2:A10)をドラッグして選択するか、直接「A2:A10」と入力します。
- Enterキーを押すと、指定した範囲の中央値が表示されます。
例えば、セルA2からA10に売上データが入力されており、その中央値をB2に表示したい場合、B2に「=MEDIAN(A2:A10)」と入力します。
中央値とは?
中央値とは、データを小さい順(または大きい順)に並べたときに、ちょうど真ん中にくる値のことです。
- データ数が奇数の場合: 真ん中の値が中央値になります。
- 例: 1, 3, 5, 7, 9 → 中央値は5
- データ数が偶数の場合: 真ん中の2つの値の平均が中央値になります。
- 例: 1, 3, 5, 7, 9, 11 → 中央値は(5+7)/2 = 6
MEDIAN関数の利用シーン
MEDIAN関数は、データの分布を把握する上で、平均値だけでは見えにくい実態を捉えるのに適しています。以下のような様々なビジネスシーンで活用できます。
1. 給与や報酬の分析
社員の給与や販売員の報酬などを分析する際、一部の非常に高い(または低い)給与が平均値を押し上げて(下げて)しまうことがあります。MEDIAN関数を使うことで、外れ値の影響を受けにくい、より一般的な給与水準を把握できます。
- 例: 従業員10人の給与データで、社長の給与が非常に高額な場合、平均値は高く出がちです。しかし、中央値を見ることで、一般的な従業員の給与水準に近い値を知ることができます。
2. 顧客単価の把握
顧客ごとの購入金額(顧客単価)を分析する際、一部のヘビーユーザーやセール品のみを購入する顧客の影響で平均単価が実態と異なることがあります。MEDIAN関数を使えば、一般的な顧客層の単価をより正確に把握し、マーケティング戦略に役立てられます。
3. 試験の点数分析
クラス全体の試験の平均点だけでは、生徒の学習状況を正確に把握できないことがあります。例えば、非常に優秀な生徒と不振な生徒が混在している場合、平均点だけでは実態が見えにくいです。MEDIAN関数を使うことで、クラスの中間層の生徒がどのくらいの点数を取っているのかを知ることができます。
4. アンケート結果の集計
満足度調査や評価アンケートなどで、5段階評価などの数値データを得た場合、MEDIAN関数を使って中央値を算出することで、回答者の全体的な傾向を把握できます。特定の回答に偏りがある場合でも、中央値は影響を受けにくい特徴があります。
MEDIAN関数の応用
MEDIAN関数は単独で使うだけでなく、他の関数と組み合わせることで、条件付き集計や応用的な分析にも対応できます。
1. 特定の条件を満たす中央値を計算する(FILTER関数と組み合わせる)
Excelのバージョンによっては、FILTER関数とMEDIAN関数を組み合わせることで、特定の条件を満たすデータの中央値を計算できます。
=MEDIAN(FILTER(範囲, 条件範囲=条件値))
FILTER関数: 指定した条件に基づいて、データの範囲をフィルター処理します。この例では、特定の条件に合致するデータだけを抽出し、その中央値を計算します。
例えば、地域別に売上データがあり、特定の「東京」地域の売上の中央値を知りたい場合、以下のように記述できます。(ここでは、売上がB列、地域がA列にあると仮定します)
=MEDIAN(FILTER(B:B, A:A=”東京”))
2. 配列数式としてのMEDIAN関数(旧バージョンExcelでの条件付き中央値)
FILTER関数が使えない古いバージョンのExcelでは、IF関数とMEDIAN関数を組み合わせ、配列数式として特定の条件の中央値を計算できます。
=MEDIAN(IF(条件範囲=条件値, 範囲))
この数式を入力した後、Ctrl + Shift + Enterキーを同時に押して確定する必要があります。数式が中括弧 {} で囲まれれば、配列数式として認識されています。
例えば、「東京」地域の売上の中央値を計算する場合:
{=MEDIAN(IF(A:A=”東京”, B:B))}
MEDIAN関数のよくあるエラーと対策
MEDIAN関数を使用する際に、意図した通りに中央値が表示されない場合があります。ここでは、その原因と対策について解説します。
エラー値が表示される場合
MEDIANは、参照範囲内の文字列・論理値・空白は無視し、0 は計算に含めます。参照にエラー値(例:#DIV/0!、#N/A など)が含まれるとエラーを返します。また、参照から数値が1つも得られない(空白や文字列・論理値のみ等)場合は #NUM! になります。なお、TRUE/FALSE を引数に直接入力した場合は 1/0 として扱われます。
対策:エラー値を除外して計算したい場合は、数値だけを抽出してから中央値を求めます。
- Microsoft 365 以降:=MEDIAN(FILTER(範囲, ISNUMBER(範囲)))
- それ以外の版(配列数式):=MEDIAN(IF(ISNUMBER(範囲), 範囲))(Ctrl+Shift+Enter で確定)
参照範囲に少なくとも1つの有効な数値が含まれているかも確認しましょう。
期待する中央値と異なる値が表示される場合
データの並び順が中央値の算出に影響していると誤解されがちですが、MEDIAN関数は指定された範囲内の「数値データ」を内部的に小さい順に並べ替えて中央値を算出するため、シート上のデータの並び順は関係ありません。また、非表示の行やフィルターされた行のデータが含まれているために、期待する値と異なる結果になることもあります。
対策:MEDIAN関数は、参照範囲内のすべての数値データを対象とします。もし、非表示の行やフィルターで抽出されたデータのみを対象としたい場合は、FILTER関数などと組み合わせるか、対象データを別の場所にコピーしてから計算してみてください。
引数エラー(#NUM!)が表示される場合
空のセルや非数値データのみの範囲を指定した場合、このエラーが表示されることがあります。
対策:参照する範囲に、中央値を計算できる有効な数値が少なくとも一つ含まれていることを確認してください。
MEDIAN関数とAVERAGE関数の違い
MEDIAN関数と混同されがちなのが、平均値を計算するAVERAGE関数です。両者の違いを理解することは、適切な分析を行う上で重要です。
- AVERAGE関数(平均値): 全ての数値を合計し、その個数で割った値です。外れ値(極端に大きい値や小さい値)の影響を受けやすい特徴があります。
- MEDIAN関数(中央値): データを小さい順に並べたときに中央に位置する値です。外れ値の影響を受けにくい特徴があります。
例えば、「100, 10, 20, 30, 1000」というデータセットがある場合、
- AVERAGE: (100 + 10 + 20 + 30 + 1000) / 5 = 232
- MEDIAN: 10, 20, 30, 100, 1000 → 中央値は30
このように、大きな外れ値(1000)がある場合、平均値は大きく引っ張られますが、中央値はデータの中央の実態に近い値を示します。
MEDIAN関数でデータの中央値を算出する
ExcelのMEDIAN関数は、データの中央値を効率的に算出するための便利な関数です。平均値だけでは見えにくいデータの偏りを考慮し、より実態に即した分析を行う際に役立ちます。給与分析、顧客単価の把握、アンケート結果の集計など、さまざまなビジネスシーンで活用できます。
MEDIAN関数の基本的な使い方をマスターするだけでなく、FILTER関数やIF関数と組み合わせることで、特定の条件を満たすデータの中央値を求めるなど、応用範囲も広がります。
もしMEDIAN関数で期待通りの結果が得られない場合は、指定した範囲に数値以外のデータが含まれていないか、エラー値がないかを確認してみてください。
MEDIAN関数を使いこなして、より深いデータ分析と的確な意思決定に役立てましょう。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
スプレッドシートでセルや行数を効率的にカウントするには?
スプレッドシートでデータを扱う際、セルや行数を正確に把握することは分析や管理の基本です。数値データの件数を数える COUNT 関数、全データを対象とする COUNTA 関数、条件付きの COUNTIF などを使い分けることで、状況に応じた効…
詳しくみるNOW関数の使い方:現在の日時をリアルタイムで表示する方法
NOW関数は、現在の日時(システム日時)を自動的に取得し、セルに表示する関数です。ワークシートが再計算されるたびに最新の時刻に更新されるため、作業記録やリアルタイムダッシュボード、残り時間の表示などに活用できます。 例えば、データ入力時刻の…
詳しくみるスプレッドシートでプルダウンを複数選択する方法と活用例
タスク管理表で担当者を複数選びたい、アンケートで複数の選択肢にチェックを入れたい、そんなときに便利なのがプルダウンの複数選択機能です。実は、Googleスプレッドシートでは2024年のアップデートで、プルダウンから複数の項目を選択できるよう…
詳しくみるNETWORKDAYS関数の使い方:エクセルで営業日数を正確に計算する
プロジェクトの期間計算や、納期管理、残業時間の計算など、エクセルで日付を扱う業務は多岐にわたります。その中でも、「土日を除いた営業日数(稼働日数)を正確に知りたい」というニーズは非常に多いのではないでしょうか? 祝日も考慮に入れるとなると、…
詳しくみるエクセルの番号を自動で入力する方法をわかりやすく解説
エクセルで番号を自動で入力する方法について解説します。手動で数字を入力するのは時間がかかり、ミスも起こりやすいものです。しかし、エクセルには便利な機能が備わっており、これを活用することで作業効率を大幅に向上させることができます。本記事では、…
詳しくみるスプレッドシートとエクセルの違いとは?関数・ショートカット・機能を比較
Googleスプレッドシートとエクセル(Microsoft Excel)は、いずれも代表的な表計算ソフトですが、それぞれに特有の強みがあります。スプレッドシートはクラウドベースで共同編集に優れ、Excelは長年の進化により高度な分析や自動化…
詳しくみる