ExcelのNORM.INV関数の使い方|確率から値を逆算する方法

スポンサーリンク

「ある確率に対応する値って、Excelで逆算できないかな?」。こんな場面に出くわしたことはありませんか?

NORM.DIST関数で「ある値以下になる確率」はわかったけれど、逆に「確率○%に対応する値はいくつ?」を求めるのは手計算では大変ですよね。正規分布表を逆引きするのは現実的ではありません。

そんなときに使うのがExcelのNORM.INV関数です。この記事では基本の書き方から実務での活用例まで解説します。NORM.DIST関数との逆関数の関係やNORM.S.INV関数との違いもあわせて整理しました。

ExcelのNORM.INV関数とは?確率から値を逆算する関数

NORM.INV関数(読み方: ノルム・インバース)は、正規分布の累積確率から対応する値を逆算する関数です。「NORM」は「Normal Distribution(正規分布)」、「INV」は「Inverse(逆関数)」の略です。

ひとことで言うと、NORM.DIST関数の「逆」の計算をする関数です。NORM.DIST関数が「値→確率」を求めるのに対し、NORM.INV関数は「確率→値」を求めます。

  • NORM.DIST関数: 「80点以下になる確率は89.4%」(値→確率)
  • NORM.INV関数: 「上位10%に入る点数は何点?」(確率→値)

このように、知りたい方向が逆のときにNORM.INV関数を使います。たとえば以下のような場面で活躍しますよ。

  • 品質管理で「下位5%にあたる製品重量」を逆算して規格下限値を設定する
  • 「達成確率80%」の売上水準を逆算して現実的な目標値を決める
  • 人事評価で「上位20%」の境界スコアを求めてA評価の基準値を設定する

NOTE

NORM.INV関数はExcel 2010以降で使えます。Microsoft 365、Excel 2013〜2024のすべてのバージョンに対応しています。

NORM.INV関数の書き方(構文と引数)

基本構文

=NORM.INV(確率, 平均, 標準偏差)

カッコの中に、逆算したい確率値、分布の平均と標準偏差を指定します。

引数の説明

引数必須/任意説明
確率必須逆算したい累積確率。0より大きく1より小さい値(0 < 確率 < 1)
平均必須正規分布の平均値
標準偏差必須正規分布の標準偏差。0より大きい値を指定する

3つの引数はすべて必須です。省略するとエラーになります。

TIP

確率に0や1を指定すると#NUM!エラーになります。「ちょうど0%」や「ちょうど100%」に対応する値は、正規分布ではマイナス無限大・プラス無限大になるためです。

NORM.DIST関数との逆関数の関係

NORM.INV関数とNORM.DIST関数は逆関数の関係にあります。次の式が成り立ちますよ。

NORM.DIST(x, 平均, 標準偏差, TRUE) = p
  ↔ NORM.INV(p, 平均, 標準偏差) = x

つまり、NORM.DISTで求めた確率をNORM.INVに入れると元の値に戻ります。この関係を使って検算ができるので覚えておくと便利です。

NORM.INV関数の基本的な使い方

テストの点数データでNORM.INV関数を使ってみましょう。クラス全体の平均点が65点、標準偏差が12点だとします。

上位10%に入る点数を求める

「上位10%」は「下位90%(=確率0.9)」の境界値です。

=NORM.INV(0.9, 65, 12)

結果は約 80.4点 です。つまり80.4点以上を取れば、クラスの上位10%に入ることがわかります。

下位5%の閾値を求める

赤点ラインの目安として「下位5%」の境界を求めてみます。

=NORM.INV(0.05, 65, 12)

結果は約 45.3点 です。45.3点以下の生徒は全体の下位5%に入ります。

検算(NORM.DISTとの往復)

NORM.INVで求めた値をNORM.DISTに戻すと、元の確率になるか確認できます。

=NORM.DIST(NORM.INV(0.9, 65, 12), 65, 12, TRUE)

結果は 0.9 です。きちんと元の確率に戻りました。計算結果に不安があるときは、この方法で検算してみてください。

TIP

「上位○%」を求めるときは確率を「1 – 上位の割合」で指定します。上位10%なら0.9、上位5%なら0.95、上位1%なら0.99です。

NORM.INV関数の実践的な使い方・応用例

品質管理で規格値を逆算する

製品の重量が正規分布に従い、平均500g、標準偏差5gだとします。「下位2.5%にあたる重量」と「上位2.5%にあたる重量」を求めて管理限界値を設定してみましょう。

=NORM.INV(0.025, 500, 5)

結果は約 490.2g(管理下限値: LCL)です。

=NORM.INV(0.975, 500, 5)

結果は約 509.8g(管理上限値: UCL)です。

この2つの値の範囲に全体の95%が収まります。範囲外の製品を不良品として検出する基準に使えますよ。

NOTE

NORM.DIST関数の記事では「規格内に収まる確率」を求めました。NORM.INV関数では逆に「確率から規格値そのもの」を逆算できます。セットで覚えておくと品質管理の幅が広がりますよ。

売上目標を確率から設定する

過去データから月間売上の平均が800万円、標準偏差が120万円だとします。「達成確率80%の売上水準」を求めてみましょう。

達成確率80%ということは「この値以下になる確率が80%」なので、確率0.8を指定します。

=NORM.INV(0.8, 800, 120)

結果は約 901万円 です。901万円を目標にすれば、過去の実績パターンでは80%の月で達成できる水準です。

厳しめの目標として達成確率50%も確認してみます。

=NORM.INV(0.5, 800, 120)

結果は 800万円(=平均値)です。確率50%はちょうど平均に一致します。目標のストレッチ度合いを確率で比較できるので、予算設定の根拠として活用できますよ。

評価ランクの境界値を自動計算する

従業員の評価スコアが平均70点、標準偏差10点の正規分布に従うとします。「上位20%をA評価、下位20%をC評価」とする場合の境界値を求めます。

A評価の下限(上位20% = 下位80%の境界):

=NORM.INV(0.8, 70, 10)

結果は約 78.4点 です。78.4点以上がA評価となります。

C評価の上限(下位20%の境界):

=NORM.INV(0.2, 70, 10)

結果は約 61.6点 です。61.6点以下がC評価となります。

このように確率ベースで境界値を自動計算すれば、評価者の主観に頼らない基準を作れます。

よくあるエラーと対処法

#NUM!エラー

NORM.INV関数で最もよく見るエラーです。以下の原因が考えられます。

原因対策
確率に0以下または1以上の値を指定した0より大きく1より小さい値を指定する
標準偏差に0以下の値を指定した標準偏差は0より大きい正の値を指定する
=NORM.INV(0, 50, 10)     → #NUM!エラー(確率が0)
=NORM.INV(1, 50, 10)     → #NUM!エラー(確率が1)
=NORM.INV(0.5, 50, 0)    → #NUM!エラー(標準偏差が0)
=NORM.INV(0.5, 50, 10)   → 正常(50)

確率に0や1を指定できないのは、正規分布で「確率0%の値」はマイナス無限大、「確率100%の値」はプラス無限大になるためです。実務では0.001〜0.999の範囲で使えば問題ありません。

#VALUE!エラー

引数に数値以外の文字列を指定すると発生します。

=NORM.INV("abc", 50, 10)  → #VALUE!エラー

セル参照を使う場合は、参照先に数値が入っているか確認してください。

#NAME?エラー

関数名のスペルを間違えると発生します。「NORM.INV」のピリオドを忘れて「NORMINV」と入力した場合、Excel 2010以降では旧関数名として認識されるためエラーにはなりません。ただし、それ以外のスペルミス(「NORM.IN」など)では#NAME?エラーになります。

=NORM.IN(0.5, 50, 10)    → #NAME?エラー(スペルミス)

TIP

関数名を入力するときはExcelの候補リスト(オートコンプリート)を活用すると、スペルミスを防げますよ。

NORM.S.INV関数・旧NORMINV関数との違い・使い分け

NORM.INV関数とNORM.S.INV関数の違い

NORM.S.INV関数は「標準正規分布」(平均0、標準偏差1)に特化した関数です。

項目NORM.INVNORM.S.INV
引数の数3(確率, 平均, 標準偏差)1(確率のみ)
分布の指定任意の平均・標準偏差を指定できる平均0・標準偏差1に固定
戻り値指定した正規分布での値zスコア(標準化された値)
使う場面実データの値を逆算するときzスコアを求めるとき

NORM.INV関数で平均0、標準偏差1を指定すると、NORM.S.INV関数と同じ結果になります。

=NORM.INV(0.975, 0, 1)   → 1.96
=NORM.S.INV(0.975)        → 1.96(同じ結果)

どちらを使えばいいか迷ったら

以下の基準で判断してみてください。

  • NORM.INV関数を使う場面: 実データの平均・標準偏差がわかっていて、具体的な値(点数、重量、売上額など)を逆算したい
  • NORM.S.INV関数を使う場面: zスコア(標準化された値)を求めたい、または統計の教科書的な計算をしたい

実務ではNORM.INV関数のほうが使う場面が多いです。引数が確率1つだけのNORM.S.INV関数は、統計学の演習向けですよ。

旧NORMINV関数との互換性

NORM.INV関数はExcel 2010で導入された「新しい名前」の関数です。旧NORMINV関数と計算結果はまったく同じです。

項目NORM.INVNORMINV(旧)
導入バージョンExcel 2010Excel 2003以前
計算結果同一同一
今後のサポート推奨互換性のために残存

新規で数式を作るときはNORM.INV関数を使いましょう。旧NORMINVで作られたブックはそのまま使い続けて大丈夫です。

関連関数の一覧

関数説明
NORM.DIST正規分布の確率を求める(値→確率)
NORM.S.DIST標準正規分布の確率を求める(zスコア→確率)
NORM.INV正規分布の逆関数(確率→値)※この記事
NORM.S.INV標準正規分布の逆関数(確率→zスコア)
NORMINVNORM.INVの旧名称
STANDARDIZEデータをzスコアに変換する
AVERAGE平均値を求める
STDEV.P母集団の標準偏差を求める

まとめ

NORM.INV関数は、正規分布の累積確率から対応する値を逆算する関数です。

この記事のポイント

  • 構文は =NORM.INV(確率, 平均, 標準偏差) の3つの引数を指定する
  • 確率は0より大きく1より小さい値(0 < 確率 < 1)を指定する
  • NORM.DIST関数の逆関数。「確率→値」を求めるときに使う
  • 品質管理の規格値設定・売上目標の逆算・評価基準の算出で活躍する
  • NORM.S.INV関数は標準正規分布(平均0・標準偏差1)に特化した関数

関連記事

NORM.INV関数の使い方がわかったら、以下の関数もあわせて覚えてみてください。データ分析の幅が広がりますよ。

タイトルとURLをコピーしました