「不良品率5%の製品を100個検査したら、不良品は最大で何個まで覚悟すればいい?」。品質管理や在庫計画で、こんな疑問を感じたことはありませんか?
平均値はすぐ出せても、「確率○%以内に収まる上限は何個」を手計算するのは現実的ではないですよね。
そんなときに使うのがBINOM.INV関数です。この記事ではGoogleスプレッドシートでのBINOM.INV関数の使い方を、基本構文から実務活用まで解説します。BINOM.DIST関数との逆関数の関係やエラー対処法もあわせて紹介しますよ。
スプレッドシートのBINOM.INV関数とは
BINOM.INV関数(読み方: バイノム・インバース関数)は、二項分布の逆関数です。累積確率を指定すると、その確率に対応する最小の成功回数を返してくれます。「BINOM」は「Binomial(二項)」、「INV」は「Inverse(逆)」の略です。
たとえば「不良品率3%の製品を200個検査したとき、95%の確率で不良品がこの個数以下に収まる」という上限値を1つの数式で求められます。
BINOM.INV関数にできることをまとめると、次のとおりです。
- 累積確率から「最大で何回起きるか」の上限値を逆算する
- 品質管理で不良品の許容上限を算出する
- 在庫計画で需要の上限を見積もる
- アンケート回収で「最低これだけは集まる」の下限を求める
NOTE
BINOM.INV関数はGoogleスプレッドシートの全バージョンで使えます。Excelにも同名の関数があり、動作は同じです。
BINOM.INV関数の基本構文と引数
基本構文
=BINOM.INV(試行回数, 成功確率, 累積確率)
カッコの中に3つの引数を指定します。
引数の意味
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 試行回数(trials) | 必須 | 試行の合計回数(0以上の整数) |
| 成功確率(probability_s) | 必須 | 各試行で成功する確率(0〜1の範囲) |
| 累積確率(alpha) | 必須 | この確率以上になる最小の成功回数を求める基準値(0〜1の範囲) |
引数の順番は「何回やって」「成功率がいくつで」「何%に収めたいか」の流れです。この順番で覚えると迷いにくいですよ。
TIP
累積確率に0.95を指定すると「95%の確率で収まる成功回数の上限」が返ります。品質管理の「95%信頼水準」で使うなら、そのまま0.95を入れればOKです。
CRITBINOM(旧関数名)との違い
GoogleスプレッドシートにはCRITBINOMという関数もあります。これはBINOM.INVの旧バージョンで、計算結果は同じです。
=CRITBINOM(100, 0.05, 0.95) ← 旧関数名(動作は同じ)
=BINOM.INV(100, 0.05, 0.95) ← 新関数名(推奨)
どちらを使っても問題ありませんが、Googleの公式ドキュメントではBINOM.INVが推奨されています。新しく数式を書くときはBINOM.INVを使いましょう。
BINOM.INV関数の使い方(基本例)
まずはシンプルな例で動きを確認してみましょう。コインを10回投げる場面を想定します。成功確率は0.5(表が出る確率)です。
=BINOM.INV(10, 0.5, 0.5)
結果は5です。累積確率0.5(50%)を指定すると、成功回数5が返ります。10回中5回は、ちょうど期待値(試行回数 x 成功確率)ですね。
累積確率を変えて、いくつかの値を見てみましょう。
| 累積確率 | 数式 | 結果 | 意味 |
|---|---|---|---|
| 0.05 | =BINOM.INV(10, 0.5, 0.05) | 2 | 5%水準の下限(これ以下は稀) |
| 0.25 | =BINOM.INV(10, 0.5, 0.25) | 4 | 25%水準の境界値 |
| 0.5 | =BINOM.INV(10, 0.5, 0.5) | 5 | 50%水準(期待値付近) |
| 0.75 | =BINOM.INV(10, 0.5, 0.75) | 6 | 75%水準の境界値 |
| 0.95 | =BINOM.INV(10, 0.5, 0.95) | 8 | 95%水準の上限(ほぼこの範囲に収まる) |
累積確率が大きくなるほど、返される成功回数も大きくなります。「○%の確率で収まる上限を知りたい」ときは、目的の確率をそのまま第3引数に入れればOKですよ。
BINOM.INV関数の実務活用3パターン
基本がわかったところで、実際の業務で使えるパターンを3つ紹介します。
品質管理で不良品の許容上限を求める
不良品率2%の製品を500個検査するとき、「99%の確率で不良品はこの個数以下に収まる」という上限を求めてみます。
=BINOM.INV(500, 0.02, 0.99)
結果は16です。つまり500個中16個以下に不良品が収まる確率が99%ということです。
この数値を品質基準にすれば「不良品が17個以上出たら、製造工程に異常がある可能性が高い」と判断できます。感覚ではなく統計的な根拠で基準を設定できるのがポイントですよね。
信頼水準ごとにまとめると、次のようになります。
| 信頼水準 | 数式 | 不良品の上限 |
|---|---|---|
| 90% | =BINOM.INV(500, 0.02, 0.90) | 13 |
| 95% | =BINOM.INV(500, 0.02, 0.95) | 14 |
| 99% | =BINOM.INV(500, 0.02, 0.99) | 16 |
信頼水準を厳しくするほど上限値も大きくなります。どの水準を採用するかは、品質の要求レベルに応じて決めてください。
在庫計画で安全在庫を見積もる
1日あたりの注文が来る確率が30%で、30日間で見たときに「95%の確率で注文件数がこの範囲内に収まる」上限を求めます。
=BINOM.INV(30, 0.3, 0.95)
結果は13です。30日間で13件以内に収まる確率が95%ということです。
この上限値をもとに安全在庫を設定すれば、95%の確率で在庫切れを防げます。実際のデータで使うなら、過去の注文データから成功確率(注文発生率)を計算して入力するとよいでしょう。
逆に「最低これだけは注文が来る」下限を知りたいときは、累積確率を小さい値にします。
=BINOM.INV(30, 0.3, 0.05)
結果は5です。30日間で注文が5件以下になる確率は5%、つまり最低でも6件以上は来る見込みが95%ということですね。
アンケート回収の見込み数を計算する
500人にアンケートを送り、回答率が40%のとき、「90%の確率で少なくともこの件数は集まる」下限を求めます。
「少なくとも」の下限を求めるには、累積確率に小さい値(ここでは0.1)を指定します。
=BINOM.INV(500, 0.4, 0.1)
結果は186です。90%の確率で186件以上は回収できる見込みです。
「最大でこの件数まで集まる可能性がある」上限も知りたければ、累積確率を大きい値にします。
=BINOM.INV(500, 0.4, 0.9)
結果は214です。下限186件〜上限214件が「80%信頼区間」になります。報告書に記載する回収見込みの幅として使えますよ。
BINOM.DISTとの関係(順方向と逆方向)
BINOM.INV関数は、BINOM.DIST関数の逆関数です。2つの関数は「入力と出力が逆」の関係にあります。
| 関数 | 入力 | 出力 | 方向 |
|---|---|---|---|
| BINOM.DIST | 成功回数(x) | 確率(p) | 回数 → 確率 |
| BINOM.INV | 確率(p) | 成功回数(x) | 確率 → 回数 |
具体例で確認してみましょう。試行回数20、成功確率0.3の場合です。
=BINOM.DIST(8, 20, 0.3, TRUE) → 約0.887(88.7%)
=BINOM.INV(20, 0.3, 0.887) → 8
BINOM.DISTに成功回数8を入れると累積確率0.887が返り、BINOM.INVに0.887を入れると成功回数8が返ります。お互いの結果を入れ替えても元に戻るということですね。
使い分けのポイントは次のとおりです。
- 「5個以下になる確率は?」 → BINOM.DIST(回数がわかっていて確率を知りたい)
- 「95%に収まる上限は何個?」 → BINOM.INV(確率がわかっていて回数を知りたい)
この関係はNORM.DIST関数とNORM.INV関数の関係とまったく同じ構造です。「回数から確率」か「確率から回数」か、どちらの方向で計算したいかで使い分けてください。
BINOM.INV関数でエラーが出るときの対処法
BINOM.INV関数でよくあるエラーと、その対処法をまとめました。
成功確率や累積確率に0〜1の範囲外を指定して#NUM!エラー
成功確率と累積確率は、どちらも0以上1以下の値でなければなりません。範囲外の値を指定すると#NUM!エラーになります。
=BINOM.INV(10, -0.1, 0.5) ← #NUM! エラー(成功確率が負の値)
=BINOM.INV(10, 0.5, 1.5) ← #NUM! エラー(累積確率が1を超えている)
他のセルの計算結果を引数に渡すときは、値が0〜1の範囲内か確認しておきましょう。
試行回数に負の数や小数を指定して#NUM!エラー
試行回数は0以上の整数が必要です。負の値を指定するとエラーになります。小数を指定した場合は小数部分が切り捨てられます。
=BINOM.INV(-5, 0.3, 0.5) ← #NUM! エラー
=BINOM.INV(10.7, 0.3, 0.5) ← 10として計算される(エラーにはならない)
引数に文字列を渡して#VALUE!エラー
数値であるべき引数にテキストが入ると#VALUE!エラーになります。セル参照を使うときは、参照先が数値になっているか確認してくださいね。
BINOM.INVと似た関数の使い分け
二項分布や確率に関連する関数は複数あります。目的に応じて使い分けましょう。
| 関数 | 用途 | 使うタイミング |
|---|---|---|
| BINOM.INV | 累積確率から成功回数を逆算 | 「○%に収まる上限は何回?」 |
| BINOM.DIST | 成功回数から確率を求める | 「x回以下になる確率は?」 |
| COMBIN | 組み合わせの数を計算 | 二項分布の数学的な背景の理解 |
| NORM.INV | 正規分布で確率から値を逆算 | 連続データで「上位○%は何点?」 |
BINOM.INVとNORM.INVは「確率から値を逆算する」という役割は同じですが、対象とするデータが異なります。成功/失敗の2択データならBINOM.INV、テストの点数や体重のような連続データならNORM.INVを選んでください。
まとめ
BINOM.INV関数は、二項分布で累積確率から成功回数を逆算する関数です。
- 3つの引数(試行回数・成功確率・累積確率)を指定するだけで使える
- 「○%の確率で収まる上限は何回?」を1つの数式で即座に求められる
- 品質管理の不良品許容上限、在庫計画の安全在庫、アンケート回収の見込み数の算出に活用できる
- BINOM.DIST関数の逆関数。「確率→回数」の方向で計算したいときに使う
- 旧関数名CRITBINOM(互換用)から移行する場合は引数の順番が同じなのでそのまま置き換えればOK
- 成功確率・累積確率は0〜1の範囲内で指定すること
「95%の確率で収まる上限は何個?」を統計的な根拠で答えられるようになると、品質基準や在庫計画の説得力がぐっと高まります。ぜひ実際のデータで試してみてくださいね。
