- 作成日 : 2025年8月25日
PERCENTILE関数の使い方:エクセルでパーセンタイルを求めてデータ分析
PERCENTILE関数は、データセットの任意のパーセンタイル値を計算するエクセルの統計関数です。パーセンタイルとは、データを小さい順に並べたときに、指定した割合の位置にある値のことで、データの分布を詳細に把握するために使用されます。成績評価、給与分析、品質管理、リスク評価など、幅広いビジネスシーンで活用されています。本記事では、PERCENTILE関数の基本的な使い方から実務での応用例、PERCENTILE.INC関数やPERCENTILE.EXC関数との違い、QUARTILE関数との使い分け、そしてよくある問題とその解決方法まで、初心者にも分かりやすく解説します。
目次
PERCENTILE関数の使い方
PERCENTILE関数とは
PERCENTILE関数は、データの集合から指定したパーセンタイル値を算出する統計関数です。パーセンタイルは、データを100等分したときの位置を示す指標で、たとえば80パーセンタイルは「データの80%がその値以下である」ことを意味します。四分位数が4等分の境界値を示すのに対し、パーセンタイルはより細かい100等分の任意の位置の値を取得できるため、データ分布のより詳細な分析が可能です。
統計分析において、平均値や中央値だけでは捉えきれないデータの特性を理解するために、パーセンタイルは重要な役割を果たします。特に、所得分布、試験成績、製品品質など、分布の偏りが重要な意味を持つデータの分析に適しています。
基本構文
PERCENTILE関数の構文は次のとおりです。
=PERCENTILE(配列, 率)
各引数について詳しく説明します。
配列:パーセンタイル値を求めたい数値データの範囲を指定します。セル範囲、配列定数、名前付き範囲などが使用できます。文字列や論理値は無視されます。
率:求めたいパーセンタイルを0から1の間の小数で指定します。
- 0.1 = 10パーセンタイル(下位10%の境界)
- 0.5 = 50パーセンタイル(中央値)
- 0.9 = 90パーセンタイル(下位90%の境界)
パーセンタイルの計算原理
PERCENTILE関数の計算方法を理解することで、結果の解釈が正確になります。
データが整数個の場合、指定したパーセンタイルが正確にデータポイントに一致しないことがあります。この場合、PERCENTILE関数は線形補間を使用して値を計算します。
たとえば、
10個のデータで25パーセンタイル(0.25)を求める場合:
位置 = (10-1) × 0.25 + 1 = 3.25
- 3番目と4番目のデータを 0.75 : 0.25(3番目:4番目)で内分した値を返します(小数部 0.25 が上側への重み)。
基本的な使用例
実際にPERCENTILE関数を使用してみましょう。A1:A100に売上データが入力されている場合の例です。
=PERCENTILE(A1:A100, 0.1) // 10パーセンタイル(下位10%)
=PERCENTILE(A1:A100, 0.5) // 50パーセンタイル(中央値)
=PERCENTILE(A1:A100, 0.75) // 75パーセンタイル(第3四分位数)
=PERCENTILE(A1:A100, 0.95) // 95パーセンタイル(上位5%の境界)
パーセンタイルを百分率で指定したい場合は、100で割ります。
=PERCENTILE(A1:A100, 80/100) // 80パーセンタイル
PERCENTILE.INCとPERCENTILE.EXCの違い
エクセル2010以降では、より明確な計算方法を持つ2つの関数が追加されました。
PERCENTILE.INC関数:従来のPERCENTILE関数と同じ動作で、最小値(0)から最大値(1)を含めて計算します。
PERCENTILE.EXC関数:最小値と最大値を除外して計算し、より統計学的に厳密な方法を採用しています。率の有効範囲は0より大きく1未満です。
=PERCENTILE.INC(A1:A100, 0.9) // 従来の方法
=PERCENTILE.EXC(A1:A100, 0.9) // 統計学的により厳密な方法
実務では一般的にPERCENTILE.INC(または旧PERCENTILE)を使用しますが、学術研究や品質管理ではPERCENTILE.EXCが推奨される場合があります。
PERCENTILE関数の利用シーン
成績評価と偏差値計算
教育機関や企業の研修部門では、相対評価のためにPERCENTILE関数を活用します。
試験成績の相対位置を求める例:
=PERCENTRANK(成績データ!B:B, B2) * 100 // 個人の順位パーセンタイル
=PERCENTILE(成績データ!B:B, 0.8) // 上位20%のボーダーライン
偏差値に近い概念での評価基準設定:
90パーセンタイル以上:S評価
70パーセンタイル以上:A評価
30パーセンタイル以上:B評価
30パーセンタイル未満:C評価
大学入試や資格試験では、絶対的な点数よりも相対的な位置が重要になるため、パーセンタイルによる評価が有効です。
給与・報酬のベンチマーク分析
人事部門では、市場給与データの分析にPERCENTILE関数を使用します。
役職別給与水準の分析:
=PERCENTILE(マネージャー給与!C:C, 0.25) // 下位25%の給与
=PERCENTILE(マネージャー給与!C:C, 0.50) // 中央値
=PERCENTILE(マネージャー給与!C:C, 0.75) // 上位25%の境界
=PERCENTILE(マネージャー給与!C:C, 0.90) // 上位10%の境界
この分析により、自社の給与水準を市場と比較し、競争力のある報酬体系を設計できます。
売上分析とKPI設定
営業管理では、売上目標の設定や営業成績の評価にPERCENTILE関数を活用します。
月次売上高の分布分析:
=PERCENTILE(月次売上!D:D, 0.2) // 下位20%(要改善ライン)
=PERCENTILE(月次売上!D:D, 0.6) // 標準的な売上水準
=PERCENTILE(月次売上!D:D, 0.85) // 優秀な成績の基準
店舗別・担当者別の相対評価により、現実的かつ挑戦的な目標設定が可能になります。
品質管理と工程能力分析
製造業では、製品品質のばらつき管理にPERCENTILE関数を使用します。
製品寸法の管理:
=PERCENTILE(測定値!E:E, 0.001) // 0.1パーセンタイル(下限)
=PERCENTILE(測定値!E:E, 0.999) // 99.9パーセンタイル(上限)
6シグマ(±3σ)相当の中央 99.73% を幅として求める:
=PERCENTILE(測定値!E:E, 0.99865) – PERCENTILE(測定値!E:E, 0.00135)
(一般化:kσ の上下限を動的に計算)
=PERCENTILE(測定値!E:E, NORM.S.DIST(k,TRUE)) – PERCENTILE(測定値!E:E, 1 – NORM.S.DIST(k,TRUE))
※k=3 で上式は ±3σ に一致します。
リスク評価とVaR計算
金融機関では、リスク管理指標であるVaR(Value at Risk)の計算にPERCENTILE関数を使用します。
日次収益率のリスク評価:
(収益率データからリターン単位のVaRを求める例:小数表記の収益率)
= -PERCENTILE(収益率!F:F, 0.05) // 95%信頼水準のVaR(下側5%点の“損失率”を正値で)
= -PERCENTILE(収益率!F:F, 0.01) // 99%信頼水準のVaR(下側1%点)
(通貨建てVaR:ポートフォリオ時価が G1 にある場合)
= -PERCENTILE(収益率!F:F, 0.05) * G1 // 95%VaR(金額)
= -PERCENTILE(収益率!F:F, 0.01) * G1 // 99%VaR(金額)
(損益データを損失を正で管理している場合は分位をそのまま使用)
= PERCENTILE(損失額範囲, 0.95) // 95%VaR
= PERCENTILE(損失額範囲, 0.99) // 99%VaR
※コメント例の文言は「95%(/99%)の信頼水準で、損失がこの額を超える確率は5%(/1%)」と表現してください。
この分析により、一定の信頼水準での最大損失額を把握し、適切なリスク管理が可能になります。
PERCENTILE関数の応用・他関数との組み合わせ
QUARTILE関数との使い分け
QUARTILE関数は特定の四分位数のみを返しますが、PERCENTILE関数はより柔軟です。
=QUARTILE(A:A, 1) // 第1四分位数
=PERCENTILE(A:A, 0.25) // 同じ結果
10分位数(デシル)の計算例:
第1十分位数:=PERCENTILE(A:A, 0.1)
第2十分位数:=PERCENTILE(A:A, 0.2)
…
第9十分位数:=PERCENTILE(A:A, 0.9)
PERCENTRANK関数との相互利用
PERCENTRANK関数は値からパーセンタイル順位を求め、PERCENTILE関数はその逆を行います。
個人の成績の相対位置を求める:
順位パーセンタイル:=PERCENTRANK(全体成績, 個人成績)
その順位の境界値:=PERCENTILE(全体成績, PERCENTRANK(全体成績, 個人成績))
条件付きパーセンタイルの計算
特定の条件を満たすデータのパーセンタイルを計算する場合、配列数式を使用します。
部門別のパーセンタイル:
{=PERCENTILE(IF(部門=”営業”, 売上額), 0.75)}
複数条件の場合:
{=PERCENTILE(IF((部門=”営業”)*(地域=”関東”), 売上額), 0.9)}
動的なパーセンタイル分析
セル参照を使用して、インタラクティブな分析を実現できます。
=PERCENTILE(データ範囲, $B$1) // B1セルでパーセンタイル値を調整
スライダーやスピンボタンと組み合わせることで、動的な分析ツールを作成できます。
外れ値の検出と除外
パーセンタイルを使用した外れ値検出は、IQR法の一般化として使用できます。
下限 = PERCENTILE(A:A, 0.05)
上限 = PERCENTILE(A:A, 0.95)
外れ値を除外した分析:
(Microsoft 365/Excel 2021 以降・動的配列対応)
=LET(r, A2:A1000,
rnum, FILTER(r, ISNUMBER(r)),
lo, PERCENTILE.INC(rnum, 0.05),
hi, PERCENTILE.INC(rnum, 0.95),
AVERAGE(FILTER(rnum, (rnum>=lo)*(rnum<=hi))))
(従来版:配列数式/Ctrl+Shift+Enter で確定)
=AVERAGE(
IF(
(A2:A1000>=PERCENTILE.INC(A2:A1000,0.05))*
(A2:A1000<=PERCENTILE.INC(A2:A1000,0.95))*
ISNUMBER(A2:A1000),
A2:A1000))
(参考:両側5%トリム平均なら簡潔に)
=TRIMMEAN(A2:A1000, 0.10) /* 下位5%・上位5%を除外 */
ヒストグラムの階級設定
データの分布に基づいた適切な階級幅の設定にPERCENTILE関数を使用できます。
等頻度ヒストグラムの階級境界:
階級1:=PERCENTILE(A:A, 0.2)
階級2:=PERCENTILE(A:A, 0.4)
階級3:=PERCENTILE(A:A, 0.6)
階級4:=PERCENTILE(A:A, 0.8)
PERCENTILE関数のよくあるエラーと対策
#NUM!エラーの原因と対処
PERCENTILE関数で最も頻繁に発生するエラーです。
率が範囲外:率の引数が0未満または1を超える場合に発生します。
=PERCENTILE(A:A, 1.2) // エラー:1.2は無効
対策:
=IF(AND(B1>=0, B1<=1), PERCENTILE(A:A, B1), “率は0-1で指定”)
PERCENTILE.EXCでの境界値エラー:0または1を指定するとエラーになります。
=IF(AND(B1>0, B1<1), PERCENTILE.EXC(A:A, B1), “0<率<1で指定”)
#VALUE!エラーの対処
原因の例:率が数値でない/配列式の結果に数値以外(文字列・TRUE/FALSE など)が混入。
対策(数値だけを対象にする):
- 動的配列(Microsoft 365/Excel 2021以降)
=PERCENTILE.INC(FILTER(A1:A100, ISNUMBER(A1:A100)), 0.75) - 従来版(配列数式:Ctrl+Shift+Enter)
{=PERCENTILE.INC(IF(ISNUMBER(A1:A100), A1:A100), 0.75)}
エラー値や文字列を同時に除外(配列数式):
{=PERCENTILE.INC(IF(ISNUMBER(A1:A100), A1:A100), 0.5)}
※ISNUMBER で足り、NOT(ISERROR(…)) は不要です。なお互換関数の PERCENTILE ではなく PERCENTILE.INC の使用を推奨します。
データ数が少ない場合の信頼性
統計的に有意なパーセンタイル値を得るには、十分なデータ数が必要です。
最小データ数のチェック:
=IF(COUNT(A:A)>=30, PERCENTILE(A:A, 0.95), “データ不足(30個以上推奨)”)
- 中央値(50パーセンタイル):5個以上
- 四分位数(25、75パーセンタイル):10個以上
- 極端なパーセンタイル(5、95パーセンタイル):100個以上
離散データでの解釈
整数値や段階評価など、離散的なデータでのパーセンタイル計算には注意が必要です。
5段階評価の場合の問題:
30パーセンタイル = 3
70パーセンタイル = 4
このような場合、線形補間の結果が実際には存在しない値(3.7など)になることがあります。
対策として、
ROUND関数で丸める:
=ROUND(PERCENTILE(評価データ, 0.7), 0)
パフォーマンスの最適化
大量データでPERCENTILE関数を多用すると、計算速度が低下することがあります。
- 必要な範囲のみを指定(A:A より A1:A1000)
- 揮発性関数との組み合わせを避ける
- 計算結果を値として保存
=IF(計算フラグ=”ON”, PERCENTILE(A1:A1000, 0.9), 保存値)
PERCENTILE関数でデータのばらつきを把握
PERCENTILE関数を使うと、データを小さい順に並べたときの特定の位置にある値を取り出せます。平均や中央値だけでは見えない、分布の広がりや偏りを把握するのに役立ちます。
成績や給与、品質データなどの相対評価に適しており、INC版・EXC版の違いや他の関数との組み合わせによって、分析の幅が広がります。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
エクセルで日付を簡単に入力する方法
エクセルを使って日付を入力する際、多くの方が手間を感じることがあるかと思います。実際、毎回手動で入力するのは煩わしい作業ですし、日付の形式や入力ミスに悩まされることも少なくありません。しかし、エクセルには日付をスムーズに、かつ正確に入力する…
詳しくみるExcelのCopilot使い方ガイド!AIがエクセルのデータ分析を加速する
Excel in Copilot(コパイロット)は、Microsoft 365 Copilotに組み込まれたAIインタラクション」の一部です。Excelでは、データ分析や関数作成、グラフ生成などの操作を自然言語でCopilotに指示するだけ…
詳しくみるエクセルで時間を計算する方法まとめ!目的別にやり方を解説
エクセルは、時間の計算を行う上で非常に便利なツールです。ビジネスシーンや日常生活において、勤務時間の集計やタスクごとの経過時間の把握など、さまざまな場面で役立ちます。本記事では、エクセルを使用して時間を計算する方法を詳しく解説します。合計時…
詳しくみるエクセルのグループ化とは?使い方やショートカットの解説
エクセルには、多くの機能が備わっていますが、その中でも「グループ化」は特に便利な機能のひとつです。グループ化を活用することで、データの整理や視覚の強化を図ることができ、大量の情報を扱う際に煩雑さを軽減します。この記事では、エクセルのグループ…
詳しくみるエクセルの列が勝手に数字表記になってしまう理由とは?戻す方法はある?
Excelを使用していると、特定の列やセルが勝手に数字表記に変わってしまうことがあります。この現象は、データの入力方法やExcelの設定が影響している場合が多いです。たとえば、数値として認識される形式でデータを入力したり、特定のフォーマット…
詳しくみる日付をシリアル値に変換するDATEVALUE関数の使い方
DATEVALUE関数は、日付をシリアル値(Excelが日付や時刻を数値として扱うための値)に変換するための非常に便利な関数です。この関数を使用することで、テキスト形式の日付を数値として扱うことができ、日付の計算や分析が容易になります。特に…
詳しくみる