ExcelのPERCENTILE関数の使い方|百分位数(旧: PERCENTILE.INC)
「テストの上位10%に入る点数は何点か」「営業成績の下位20%のラインはどこか」——こうした「データを百分位で区切って境界値を出したい」場面で活躍するのが、ExcelのPERCENTILE関数です。
PERCENTILE関数は、データを小さい順に並べたとき「下から何%の位置にある値か」を返す統計関数ですよ。中央値や四分位数だけでなく、任意のパーセンタイル値を1つの数式で求められます。
Excel 2007以前から使われている互換性関数で、Excel 2010以降では PERCENTILE.INC と PERCENTILE.EXC の2関数が後継として用意されました。この記事ではPERCENTILE関数の構文と使い方を解説します。新関数との違いや、上位N%基準点・成績ランク分け・品質管理での使いどころまで、実務で使えるパターンを揃えて紹介しますよ。
ExcelのPERCENTILE関数とは
ExcelのPERCENTILE関数は、データの百分位数(パーセンタイル)に位置する値を返す統計関数です。データを昇順に並べたとき、「下から k×100% の位置にある値」を計算してくれますよ。
たとえば k=0.9 を指定すれば「下から90%の位置にある値(=上位10%の境界値)」が返ります。k=0.5 なら中央値、k=0.25 なら第1四分位数です。
Excel 2007以前から提供されている古い関数で、現行のExcelでは「互換性関数」に分類されています。Excel 2010以降では後継として PERCENTILE.INC(包括的)と PERCENTILE.EXC(排他的)の2つが追加されましたよ。
PERCENTILEと新関数の比較表
| 項目 | PERCENTILE(旧) | PERCENTILE.INC(新・包括的) | PERCENTILE.EXC(新・排他的) |
|---|---|---|---|
| 提供バージョン | Excel 2007以前 | Excel 2010以降 | Excel 2010以降 |
| 引数の数 | 2個 | 2個 | 2個 |
| kの範囲 | 0以上1以下 | 0以上1以下 | 1/(N+1) 〜 N/(N+1) |
| PERCENTILEとの結果 | — | 完全に一致 | 異なる(計算式が違う) |
| 位置づけ | 互換性関数 | 推奨関数(旧PERCENTILE互換) | 推奨関数(別計算式) |
PERCENTILEとPERCENTILE.INCの違い
PERCENTILEとPERCENTILE.INCの違いは、名前だけです。引数の順番・意味・計算結果は完全に一致しますよ。
=PERCENTILE(配列, k) ← 旧(互換性関数)
=PERCENTILE.INC(配列, k) ← 新(推奨)
既存の =PERCENTILE(...) を =PERCENTILE.INC(...) に書き換えるだけで、結果は完全に同じになります。「INC」は Inclusive(包括的)の略で、kの範囲が0〜1の両端を含むという意味ですよ。
どちらを使うべきか
新規ファイルを作るなら PERCENTILE.INC を使うのが正解です。Excel 2010以降では =PER と入力したときの候補に PERCENTILE.INC が優先表示されますし、Microsoft も新関数の使用を推奨していますよ。
一方で、以下のケースでは PERCENTILE をそのまま使い続けて問題ありません。
- Excel 2007以前のバージョンと共有するファイル(
.xls形式) - 既存の業務テンプレートに PERCENTILE が組み込まれていてメンテナンスする場合
- 古いVBAマクロが PERCENTILE を呼び出している場合
PERCENTILE関数の構文と引数
PERCENTILE関数の構文は次のとおりです。
=PERCENTILE(配列, k)
2つの引数すべてが必須です。それぞれの意味と制約を表で整理しますよ。
| 引数名 | 説明 | 制約 |
|---|---|---|
| 配列(array) | 百分位数を求める対象のデータ範囲 | 数値が1つ以上必要(空・文字列のみは #NUM! エラー) |
| k | 求めたいパーセンタイル(0〜1の小数) | 0以上1以下(範囲外は #NUM! エラー) |
「k」は「0以上1以下」という制約が特に重要です。「上位10%」を出すつもりで「10」と入れると #NUM! エラーになりますよ。パーセントで表現する場合は、「90%」ではなく「0.9」と小数で指定してください。
配列内の文字列・論理値・空白セルは無視されます。数値だけが計算対象ですよ。
kの値の早見表
「上位N%を出したいときのkは何にすればいい?」と迷いやすいので、よく使うパーセンタイルとkの対応表を用意しました。
| 求めたい位置 | kの値 | PERCENTILE と等価な関数 |
|---|---|---|
| 最小値 | 0 | MIN |
| 第1四分位数(Q1) | 0.25 | QUARTILE(配列, 1) |
| 中央値(第2四分位数) | 0.5 | MEDIAN / QUARTILE(配列, 2) |
| 第3四分位数(Q3) | 0.75 | QUARTILE(配列, 3) |
| 最大値 | 1 | MAX |
| 上位10%の境界 | 0.9 | — |
| 上位5%の境界 | 0.95 | — |
| 下位10%の境界 | 0.1 | — |
| 下位5%の境界 | 0.05 | — |
「上位10%の境界点」と言われたら「下から90%の位置」と読み替えて k=0.9 を指定するのがポイントですよ。
PERCENTILE関数の実務での活用例
上位10%の点数を求める(成績分析)
「テストで上位10%に入る点数は何点か」を計算してみます。30人分のテスト成績が A2:A31 に入っているとしますね。
「上位10%」は「下位90%の位置」と同じ意味なので、k=0.9 を使います。
=PERCENTILE(A2:A31, 0.9)
戻り値が 85 なら、「85点以上を取れば上位10%に入る」ということですよ。
「上位5%の点数」を求めたいなら =PERCENTILE(A2:A31, 0.95) のように、kの値を変えるだけで任意のパーセンタイル点を計算できます。
営業成績を3ランクに分ける
「営業担当者を上位20%・中位60%・下位20%の3ランクに分けたい」というケースです。各ランクの境界値を PERCENTILE で出します。
上位20%の下限: =PERCENTILE(売上範囲, 0.8)
下位20%の上限: =PERCENTILE(売上範囲, 0.2)
この2つの境界値を使えば、IF関数で各担当者をランク分けできますよ。
=IF(B2>=$D$1, "上位", IF(B2<=$D$2, "下位", "中位"))
D1セルに上位20%の下限、D2セルに下位20%の上限を入れておくと、相対評価の自動化ができますよ。
品質管理:P95値を求める
製品寸法のばらつきを把握する場面で、「測定値の95パーセンタイル(P95)」を見ることがあります。「全体の95%がこの値以下に収まっている」という基準値ですね。
=PERCENTILE(測定値範囲, 0.95)
戻り値が 10.12mm なら、「測定値の95%は10.12mm以下」という意味ですよ。規格上限を決めるときの根拠として使えます。
TIP
平均値だけでデータを評価すると、外れ値に引きずられて実態がぼやけます。中央値(k=0.5)と P95(k=0.95)を併用すると、「ふつうの値」と「悪化したときの上限値」を同時に把握できますよ。
給与分析の中央値と75パーセンタイル
業界給与のベンチマーク調査では「中央値」と「75パーセンタイル」がよく使われます。
中央値: =PERCENTILE(給与範囲, 0.5)
75パーセンタイル: =PERCENTILE(給与範囲, 0.75)
「業界の中央値が500万円、75パーセンタイルが650万円」のように、自社の給与水準を業界内で位置づける指標になりますよ。
PERCENTILE.EXCとの違い(包括的vs排他的)
PERCENTILE.EXCはExcel 2010で追加された別の計算方式の関数です。「EXC」は Exclusive(排他的)の略で、kの両端(0と1)を含まないという意味ですよ。
PERCENTILE / PERCENTILE.INC と PERCENTILE.EXC の違いを、具体的な数値で確認します。データ {10, 20, 30, 40, 50}(5個)で k=0.25 を計算してみますね。
| 関数 | 計算式(位置) | 結果 |
|---|---|---|
| PERCENTILE | (5-1)×0.25 + 1 = 2番目 | 20 |
| PERCENTILE.INC | 同上 | 20 |
| PERCENTILE.EXC | (5+1)×0.25 = 1.5番目 | 15(10と20の中間) |
PERCENTILE.EXC は計算式が (N+1)×k なので、kの有効範囲は 1/(N+1) 〜 N/(N+1) です。N=5 なら 0.166... 〜 0.833... の範囲しか使えませんよ。
| 用途 | 推奨関数 |
|---|---|
| 既存の PERCENTILE 数式の互換維持 | PERCENTILE.INC |
| 一般的な実務分析(上位N%・四分位など) | PERCENTILE.INC |
| 統計学の教科書通りの「両端を除いた」計算 | PERCENTILE.EXC |
実務では PERCENTILE / PERCENTILE.INC を使うケースが圧倒的に多いです。PERCENTILE.EXC は統計の専門分野で「両端を含めない計算が必要な場合」のみ選ぶ、と覚えておけば十分ですよ。
QUARTILE関数との使い分け
QUARTILE関数(四分位数を返す関数)は、PERCENTILE関数の特殊ケースとして整理できます。
| QUARTILE の引数 | 意味 | PERCENTILE での同等指定 |
|---|---|---|
| 0 | 最小値 | k=0 |
| 1 | 第1四分位数(Q1) | k=0.25 |
| 2 | 中央値(Q2) | k=0.5 |
| 3 | 第3四分位数(Q3) | k=0.75 |
| 4 | 最大値 | k=1 |
つまり「四分位(25%刻み)だけでよい」場面では QUARTILE、「任意のパーセンタイル(10%・90%・95%など)」が必要な場面では PERCENTILE を使うと考えれば迷いませんよ。
四分位とそれ以外を混在して計算する場合は、PERCENTILE に統一したほうが数式の見通しが良くなることが多いです。
PERCENTILEでよくあるエラーと対処法
PERCENTILE関数で起きやすいエラーをまとめます。
| エラー | 主な原因 | 対処法 |
|---|---|---|
#NUM! | kに 0未満 または 1超 の値を指定した | kは 0〜1 の範囲で指定する |
#NUM! | 配列に数値が1つもない(空・文字列のみ) | 配列に数値が含まれているか確認する |
#VALUE! | kに文字列など数値以外を指定した | kは数値またはセル参照で指定する |
#NAME? | 関数名のスペルミス | 「PERCENTILE」(ピリオドなし)と入力する |
| エラー値の伝播 | 配列内に #N/A や #DIV/0! が含まれる | エラー値を取り除くか、IFERRORで処理する |
最もよく起きるのが「kに 10 や 90 を指定したときの #NUM!」です。「上位10%」を求めたいときは k=0.9 のように 小数で指定する のがポイントですよ。
セル参照で kを指定する場合、参照先のセルがパーセント書式(90%表示)になっているなら、内部値は 0.9 として扱われます。書式と内部値の違いに注意してくださいね。
PERCENTILE.INCへの移行ガイド
既存の PERCENTILE 数式を新関数 PERCENTILE.INC に書き換える手順は次のとおりです。
| 旧関数の数式 | 新関数の数式(同等) |
|---|---|
=PERCENTILE(A2:A31, 0.9) | =PERCENTILE.INC(A2:A31, 0.9) |
=PERCENTILE(売上, 0.5) | =PERCENTILE.INC(売上, 0.5) |
=PERCENTILE(B$2:B$100, $D$1) | =PERCENTILE.INC(B$2:B$100, $D$1) |
引数の変更は不要で、関数名の部分だけ書き換えれば完了ですよ。計算結果は完全に同じです。
一括置換の手順:
- Ctrl + H(置換ダイアログ)を開く
- 検索する文字列:
PERCENTILE( - 置換後の文字列:
PERCENTILE.INC( - 「すべて置換」
- いくつかのセルで結果が変わっていないことを確認する
検索文字列を PERCENTILE( のように 末尾の左かっこまで含める のがコツですよ。こうすれば既存の PERCENTILE.INC( や PERCENTILE.EXC( を誤って書き換えてしまうのを防げます。
まとめ:PERCENTILE関数で百分位数の計算をマスターしよう
ExcelのPERCENTILE関数のポイントを整理します。
- PERCENTILE関数は百分位数(パーセンタイル)を返す旧版(互換性関数)
- 構文は
=PERCENTILE(配列, k)の2引数 - kは 0以上1以下 の小数で指定(10や90を入れると
#NUM!エラー) - Excel 2010以降の後継は PERCENTILE.INC(同じ計算)と PERCENTILE.EXC(別計算式)
- 移行は関数名部分を
PERCENTILE(→PERCENTILE.INC(に書き換えるだけ - 上位N%の基準点・営業ランク分け・P95値・給与中央値などの実務指標を1式で計算できる
- 四分位(25%刻み)だけならQUARTILE、任意のパーセンタイルならPERCENTILEを選ぶ
「データを百分位で切り分ける」感覚が身につくと、平均値だけでは見えなかったデータの分布が一気に把握できるようになりますよ。まずは「上位10%の境界点を求める」一場面から、PERCENTILEを試してみてくださいね。
統計関数のシリーズ記事として、NORMDIST関数、NORMINV関数、NORMSDIST関数、NORMSINV関数、LOGNORMDIST関数、NEGBINOMDIST関数、HYPGEOMDIST関数も合わせて読むと、Excelの統計関数全体の見通しがよくなりますよ。
