「先月いちばん売れた個数はいくつ?」「アンケートで一番多かった評価点は?」と聞かれたとき、平均値(AVERAGE)でも中央値(MEDIAN)でも答えにくいことがあります。求められているのは「最も多く出てきた値」、つまり最頻値です。
そこで使うのが MODE.SNGL関数 です。データセットの中で最も頻繁に出現する数値を1つだけ返してくれる、シンプルで実用性の高い関数です。
この記事では、MODE.SNGL関数の構文から、旧MODE関数からの移行ポイント、MODE.MULTとの使い分け、よくあるエラーの対処法まで、実例を交えて整理します。
ExcelのMODE.SNGL関数とは?
ExcelのMODE.SNGL関数(読み方:モード・シングル)は、データセットの中で最も頻繁に出現する単一の数値(最頻値)を返す関数です。関数名は「MODE(最頻値)+SNGL(Single:単一)」の組み合わせで、「単一の最頻値」を意味します。
たとえば 5.6, 4, 4, 3, 2, 4 というデータでは、4が3回登場して最も多いため、戻り値は 4 になります。データの「最も典型的な値」を一発で取得できる関数です。
中心傾向(データの真ん中らしさ)を表す代表的な指標は3つあり、MODE.SNGLはそのうちの1つです。
外れ値の影響を受けやすい平均、順位中心の中央値に対し、最頻値は「人気度合い」「典型例」を捉えるのに向いています。
NOTE
MODE.SNGLはExcel 2010で追加された関数です。それ以前のMODE関数の後継として登場しました。Excel 2010以降のMac版・Windows版で利用できます。
MODE.SNGL関数の書き方(構文と引数)
MODE.SNGL関数の構文は次のとおりです。
=MODE.SNGL(数値1, [数値2], ...)
引数の仕様を表にまとめました。
| 引数 | 必須 | 説明 |
|---|---|---|
| 数値1 | 必須 | 最頻値を求めたい1つ目の数値またはセル範囲 |
| 数値2, … | 任意 | 2つ目以降の数値またはセル範囲(最大254個まで指定可) |
戻り値は 単一の数値 です。データセットの中で最も多く登場する値が返ります。
引数に指定したセルのうち、テキスト・論理値・空白セルは無視されます。ただし数値の 0(ゼロ) はカウント対象になるので注意してください。また、引数にエラー値が含まれていると、そのままエラーが返ります。
TIP
同じ最頻度の値が複数ある場合(同率最多)、MODE.SNGLは 最初に現れた値 を返します。すべての同率最多値を取得したい場合は MODE.MULT関数 を使ってください。
実務例:月次販売数量の最頻値を求める
ある商品の1か月間の日別販売数量を集計してみます。データはA店舗で記録した10日分です。
| 日付 | 販売数量 |
|---|---|
| 6/1 | 12 |
| 6/2 | 15 |
| 6/3 | 12 |
| 6/4 | 8 |
| 6/5 | 12 |
| 6/6 | 18 |
| 6/7 | 10 |
| 6/8 | 12 |
| 6/9 | 15 |
| 6/10 | 12 |
販売数量が B2:B11 に入っているとします。
=MODE.SNGL(B2:B11)
戻り値は 12 です。10日のうち5日で販売数量が12個だったため、これが最頻値となります。
参考に平均と中央値も並べてみると、それぞれ次のようになります。
| 指標 | 数式 | 結果 |
|---|---|---|
| 平均 | =AVERAGE(B2:B11) | 12.6 |
| 中央値 | =MEDIAN(B2:B11) | 12 |
| 最頻値 | =MODE.SNGL(B2:B11) | 12 |
平均は12.6ですが、最頻値は12。在庫補充の初期発注量を決めるとき、「平均の13個」よりも「最頻値の12個」のほうが日常需要に近いと判断できる場面があります。これが最頻値を見るメリットです。
NOTE
平均は外れ値(たとえば6/6の18個)に引きずられやすい指標です。「日常的にいくつ売れているか」を知りたいときは、平均と最頻値を両方確認すると判断の精度が上がります。
MODE関数からMODE.SNGLへの移行
Excel 2007以前から使われていた MODE関数 は、MODE.SNGLの旧バージョンに相当します。Excel 2010以降ではMODE関数も互換性関数として残されており、現在も使えます。
| 項目 | MODE | MODE.SNGL |
|---|---|---|
| 導入時期 | Excel 2007以前 | Excel 2010以降 |
| 引数の最大数 | 255個 | 254個 |
| 関数の分類 | 互換性関数 | 統計関数 |
| 計算結果 | 同一 | 同一 |
| Microsoft推奨 | — | こちらが推奨 |
計算結果はまったく同じです。引数の最大数だけ細かな違いがあります(実務上、255個も254個も誤差です)。新規ブックでは MODE.SNGL を使うのが推奨されますが、既存ブックで MODE を見かけても結果に影響はありません。
TIP
MODE関数からMODE.SNGLへの移行は 関数名を書き換えるだけ で済みます。
=MODE(B2:B11)を=MODE.SNGL(B2:B11)に変えれば、同じ結果が返ります。引数の指定方法も同じなので、置換作業もシンプルです。
MODE.MULTとの使い分け
MODE系の関数は、戻り値の数で MODE.SNGL と MODE.MULT に分かれます。
| 関数 | 戻り値 | 同率最多があるとき | こんな場面で使う |
|---|---|---|---|
| MODE.SNGL | 1つ | 最初の値だけ | 最頻値を1つだけ知りたい |
| MODE.MULT | 複数(配列) | すべて返す | 同率1位を漏らさず取得したい |
MODE.SNGLを選ぶケース
- 売れ筋商品の代表的な販売数を1つだけ表示したい
- アンケート結果のサマリーを1セルにまとめたい
- ダッシュボードで「最頻値」を簡潔に見せたい
MODE.MULTを選ぶケース
- アンケート評価で同率1位がある可能性が高い
- 同点トップを全部抜き出して詳しく分析したい
- 「最頻値が1つとは限らない」前提でレポートを作る
WARNING
MODE.SNGLは同率最多があっても1つしか返さないため、「実は同率1位が他にもあった」事実が見落とされることがあります。重要な意思決定に使う場合は、
=COUNTIF(範囲, MODE.SNGL(範囲))で最頻値の出現回数を確認し、必要に応じて MODE.MULT関数 と併用しましょう。
よくあるエラーと対処法
| エラー | 原因 | 対処法 |
|---|---|---|
#N/A | データに重複値が一つもない | データを確認。IFERRORで代替表示 |
#VALUE! | 引数にエラー値が含まれている/範囲指定が不正 | 範囲内のエラーを除去してから再計算 |
#NUM! | データ数が極端に少ない | 引数に有効な数値を2つ以上含める |
#NAME? | Excel 2007以前で実行している | Excel 2010以降を使うか MODE 関数で代替 |
特に多いのが #N/A エラーです。これは「データに重複する値が1つもない(全員バラバラ)」場合に表示されます。最頻値そのものが定義できないため、関数として答えを返せないのです。
=IFERROR(MODE.SNGL(B2:B11), "重複なし")
このように IFERROR関数 で囲っておけば、#N/A の代わりに「重複なし」と表示でき、レポートが見やすくなります。
NOTE
#N/A が返ること自体が「データの多様性が高い」というインサイトでもあります。「みんなバラバラの回答だった」という事実は、ビジネス判断の上では重要な情報になることもあります。
関連する統計関数
中心傾向や頻度の分析では、MODE.SNGL以外にもよく使う関数があります。
| 関数 | 役割 |
|---|---|
| MODE.MULT | 同率最多の最頻値を全て配列で返す |
| MODE | 旧来の最頻値関数(互換性関数) |
| AVERAGE | 算術平均を求める |
| MEDIAN | 中央値を求める |
| COUNTIF | 特定の値の出現回数を数える |
| FREQUENCY | 度数分布を求める |
「最頻値の出現回数を一緒に確認したい」場合は、=COUNTIF(B2:B11, MODE.SNGL(B2:B11)) のように COUNTIF関数 と組み合わせると便利です。最頻値が「圧倒的に多い」のか「ぎりぎり1位」なのかが見えてきます。
まとめ
ExcelのMODE.SNGL関数は、データセットの最頻値を1つだけ返すシンプルな関数です。要点を整理しておきます。
- 構文:
=MODE.SNGL(数値1, [数値2], ...) - 戻り値: 最も頻繁に出現する単一の数値
- 同率最多があるとき: 最初に現れた値を返す
- テキスト・論理値・空白は無視、ゼロはカウント対象
- 重複値が1つもないと #N/A が返る
- MODE関数からの置き換え はそのまま可能(結果は同一)
販売数量・評価点・回答件数など「最も多かった値」を一発で出したい場面で、MODE.SNGLは最も手軽な選択肢です。同率1位を漏らさず把握したいときは MODE.MULT関数 に切り替えましょう。
データの「真ん中」を多角的に捉えるには、MODE.SNGLだけでなく AVERAGE関数 と MEDIAN関数 も並べて確認するのがおすすめです。3つの値が大きく食い違っているときは、データに偏りや外れ値がある可能性が高く、ビジネス判断の前にデータの分布を確認するきっかけになります。
