【Excel】PERCENTRANK関数でデータの相対的な順位を百分率で求める方法

【Excel】PERCENTRANK関数でデータの相対的な順位を百分率で求める方法
🛡️ 超解決

【要点】PERCENTRANK関数でデータの相対的な順位を百分率で求める

  • PERCENTRANK関数: 指定した数値がデータ全体の中でどの位置にいるかを百分率で返します。
  • PERCENTRANK.INC関数: データの範囲に0と1を含めた百分率で順位を返します。Excel2010以降で利用可能です。
  • PERCENTRANK.EXC関数: データの範囲に0と1を含めない百分率で順位を返します。Excel2010以降で利用可能です。

ADVERTISEMENT

PERCENTRANK関数が返す百分率順位の仕組み

PERCENTRANK関数は、ある値がデータセット全体の中でどれくらいの位置にあるかを、0から1の間の数値(百分率)で表します。例えば、0.75という値が返された場合、その値はデータセットの75パーセンタイルに位置することを示します。

これは、その値以下のデータが全体の75%を占めることを意味します。この関数は、データの分布を理解したり、個々のデータポイントの相対的な重要度を評価したりする際に役立ちます。

Excel 2010以降では、PERCENTRANK.INCとPERCENTRANK.EXCの2つのバージョンが提供されています。これらは、計算方法における端数処理や、返される値の範囲が異なります。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

PERCENTRANK.INC関数を使った百分率順位の計算手順

PERCENTRANK.INC関数は、データの最小値(0パーセンタイル)と最大値(1パーセンタイル)を含めた範囲で順位を計算します。これは、最も一般的な使用方法です。

  1. 計算結果を表示するセルを選択する
    百分率順位を表示したいセルをクリックして選択します。
  2. PERCENTRANK.INC関数を入力する
    選択したセルに以下の数式を入力します。
    =PERCENTRANK.INC(array, number, [significance])
    • array: 順位を計算したい数値データが含まれるセル範囲を指定します。この範囲は絶対参照(例: $A$1:$A$10)にすることをおすすめします。
    • number: 順位を計算したい具体的な数値を指定します。これはarrayの範囲内にある値、またはその範囲外の値でも指定できます。
    • [significance](省略可能): 有効数字の桁数を指定します。省略した場合、3桁になります。

    例として、A1からA10の範囲にデータがあり、B1セルに順位を求めたい数値を入力している場合、C1セルには=PERCENTRANK.INC($A$1:$A$10, B1)と入力します。

  3. Enterキーを押して結果を表示する
    数式を入力したら、Enterキーを押して計算結果を表示させます。
  4. 必要に応じて数式をコピーする
    他のデータに対しても同じ計算を行いたい場合は、数式が入力されたセルのフィルハンドル(右下隅の小さい四角)をドラッグして数式をコピーします。arrayを絶対参照にしておくと、正しくコピーできます。

PERCENTRANK.EXC関数を使った百分率順位の計算手順

PERCENTRANK.EXC関数は、データの最小値(0パーセンタイル)と最大値(1パーセンタイル)を除いた範囲で順位を計算します。そのため、返される値は0と1を含まない範囲になります。

  1. 計算結果を表示するセルを選択する
    百分率順位を表示したいセルをクリックして選択します。
  2. PERCENTRANK.EXC関数を入力する
    選択したセルに以下の数式を入力します。
    =PERCENTRANK.EXC(array, number, [significance])
    • array: 順位を計算したい数値データが含まれるセル範囲を指定します。この範囲は絶対参照(例: $A$1:$A$10)にすることをおすすめします。
    • number: 順位を計算したい具体的な数値を指定します。
    • [significance](省略可能): 有効数字の桁数を指定します。省略した場合、3桁になります。

    例として、A1からA10の範囲にデータがあり、B1セルに順位を求めたい数値を入力している場合、C1セルには=PERCENTRANK.EXC($A$1:$A$10, B1)と入力します。

  3. Enterキーを押して結果を表示する
    数式を入力したら、Enterキーを押して計算結果を表示させます。
  4. 必要に応じて数式をコピーする
    他のデータに対しても同じ計算を行いたい場合は、数式が入力されたセルのフィルハンドルをドラッグして数式をコピーします。

ADVERTISEMENT

PERCENTRANK関数使用時の注意点とよくある誤解

データ範囲に重複値がある場合

PERCENTRANK関数は、データ範囲に重複する値がある場合、それらの重複値に対して同じ百分率順位を返します。これは、重複する値が全く同じ相対的な位置にあると見なされるためです。

例えば、データが {10, 20, 20, 30} で、20の順位を求めると、PERCENTRANK.INCでは両方の20に対して0.5が返されます。これは、20がデータセットの中央(50パーセンタイル)に位置することを示しています。

この場合、単純な順位付けとは異なり、値の「存在確率」のような意味合いで解釈されます。

number引数がデータ範囲に含まれない場合

PERCENTRANK.INC関数では、number引数に指定した値がarray(データ範囲)に含まれていない場合でも、その値がデータ範囲の最小値より小さい場合は0、最大値より大きい場合は1を返します。範囲内の値として補間計算が行われるためです。

一方、PERCENTRANK.EXC関数では、number引数がデータ範囲の最小値または最大値と等しい場合、またはそれらを超える場合は#NUM!エラーを返します。これは、0と1を含まない範囲で計算するためです。

非数値データや空白セルがある場合

PERCENTRANK関数は、数値データのみを対象とします。array(データ範囲)に文字列やエラー値、空白セルが含まれている場合、それらは無視されます。

ただし、number引数に非数値や空白を指定した場合、#VALUE!エラーとなります。計算対象となるデータが数値であることを確認してください。

Excelのバージョンによる違い

PERCENTRANK関数は、Excel 2010以降のバージョンで、PERCENTRANK.INCおよびPERCENTRANK.EXCという名前で提供されています。Excel 2007以前のバージョンでは、古いPERCENTRANK関数が使用されていましたが、互換性のために新しい関数名でも利用可能です。

ただし、古いPERCENTRANK関数は、PERCENTRANK.INC関数とほぼ同じ動作をします。新しいバージョンでは、INCとEXCを使い分けることで、より詳細な順位計算が可能になっています。

PERCENTRANK関数と他の順位付け関数の比較

Excelには、データの順位を求めるための関数が他にもいくつかあります。PERCENTRANK関数は、特にデータの相対的な位置を百分率で把握したい場合に適していますが、目的に応じて他の関数を使い分けることも重要です。

項目 PERCENTRANK.INC PERCENTRANK.EXC RANK.EQ RANK.AVG
主な機能 値がデータ全体に占める割合(0~1)を返す 値がデータ全体に占める割合(0~1を含まない)を返す 値の順位(同順位は同じ番号)を返す 値の順位(同順位は平均順位)を返す
返り値の例 0.75 0.75 3 3.5
同順位の扱い 同じ値には同じ割合を返す 同じ値には同じ割合を返す 同じ値には同じ順位番号を返す 同じ値には平均順位番号を返す
Excelバージョン 2010以降 2010以降 2010以降 2010以降
得意な用途 データの分布における位置を百分率で把握したい場合 データの分布における位置を、最小・最大を除いた範囲で把握したい場合 単純な順位(1位、2位など)を知りたい場合 同順位を考慮した平均的な順位を知りたい場合

まとめ

本記事では、ExcelのPERCENTRANK.INC関数とPERCENTRANK.EXC関数を使用して、データセット内での値の相対的な位置を百分率で求める方法を解説しました。

これらの関数を使うことで、単なる順位だけでなく、データ全体のどのあたりに位置するのかを具体的に把握できます。例えば、テストの成績が全体の何パーセントより上位かを正確に知りたい場合に役立ちます。

今後は、PERCENTRANK関数とRANK.EQ関数・RANK.AVG関数を使い分けて、データの分析に役立ててください。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】