「1時間に平均3件の問い合わせが来るコールセンターで、5件以上来る確率はどのくらい?」こんな疑問に答えてくれるのが、ExcelのPOISSON.DIST関数です。
ポアソン分布は「ある期間や範囲のなかで、平均λ回起きるイベントが、実際にちょうどX回起きる確率」を計算する統計手法です。問い合わせ件数や不良品の発生件数など、ビジネスの現場でも意外と使えるんですよ。
この記事では、POISSON.DIST関数の基本的な書き方から、TRUE/FALSEの使い分け、実務での活用例、よくある質問まで、わかりやすく解説していきます。
ExcelのPOISSON.DIST関数とは?
POISSON.DIST関数は、ポアソン分布に基づいて確率を計算する関数です。ポアソン分布とは、一定の期間や範囲内で「平均λ回起きるイベント」が「ちょうどX回起きる確率」を表す確率分布のことですよ。
読み方は「ポアソン・ディストリビューション」です。POISSONはフランスの数学者シメオン・ドニ・ポアソンに由来します。DISTはdistribution(分布)の略です。
たとえば、次のような場面で活躍します。
- コールセンターに1時間あたり平均5件の問い合わせがあるとき、8件以上来る確率を知りたい
- 製造ラインで1日平均2個の不良品が出るとき、不良品が0個になる日の割合を調べたい
- Webサイトに1分間あたり平均10アクセスあるとき、15アクセス以上になる確率を把握したい
- 銀行の窓口に1時間あたり平均20人が来店するとき、30人以上来る確率を見積もりたい
このように「平均的な発生回数(λ)はわかっているけど、特定の回数になる確率を知りたい」ときに使う関数です。回数の上限がなく、独立してランダムに発生する事象に向いていますよ。
なお、Microsoft 365 と Excel 2021/2019/2016 のすべてのバージョンで利用できます。
POISSON.DIST関数の書き方(構文と引数)
基本構文
=POISSON.DIST(イベント数, 平均, 関数形式)
引数は3つで、すべて必須です。
引数の説明
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| イベント数 | 必須 | 確率を求めたいイベントの発生回数。0以上の整数を指定します |
| 平均 | 必須 | 一定期間内のイベントの平均発生回数(λ)。0より大きい数値を指定します |
| 関数形式 | 必須 | TRUEで累積分布、FALSEで確率密度を返します |
引数のなかでも、関数形式のTRUE/FALSEの違いが最大のポイントです。
- FALSE(確率密度): 「ちょうどX回起きる確率」を返します
- TRUE(累積分布): 「0回からX回までに収まる確率」を返します
たとえば平均3件のとき、POISSON.DIST(5,3,FALSE)なら「ちょうど5件になる確率」が得られます。POISSON.DIST(5,3,TRUE)なら「0〜5件のいずれかに収まる確率」になりますよ。
なお、イベント数に小数を指定した場合は、エラーにはならず小数点以下が切り捨てられて計算されます。3.7と指定しても3として扱われるので、整数で渡すのが基本です。
確率密度(FALSE)と累積分布(TRUE)の違いを表で理解する
文字だけだとイメージしにくいので、平均3件のときを例にイベント数ごとの値を並べてみましょう。
| イベント数 | FALSE(ちょうどX回) | TRUE(X回以下) |
|---|---|---|
| 0 | 0.0498 | 0.0498 |
| 1 | 0.1494 | 0.1991 |
| 2 | 0.2240 | 0.4232 |
| 3 | 0.2240 | 0.6472 |
| 4 | 0.1680 | 0.8153 |
| 5 | 0.1008 | 0.9161 |
| 6 | 0.0504 | 0.9665 |
FALSEの値は山型に分布し、平均値(3)付近でピークを迎えます。一方、TRUEの値は0から1へ累積されていくので、必ず右肩上がりになりますよ。
「ピンポイントの確率を知りたい」ならFALSE、「以下・以上の範囲で議論したい」ならTRUEと覚えておくと迷いません。
POISSON.DIST関数の基本的な使い方
実際にPOISSON.DIST関数を使ってみましょう。
例題: コールセンターに1時間あたり平均4件の問い合わせがあります。ちょうど6件来る確率を求めてみます。
セルに次の数式を入力してください。
=POISSON.DIST(6, 4, FALSE)
結果は 約0.1042(約10.4%)になります。平均4件のところに6件来る確率は、だいたい10%くらいということですね。
次に、6件以下に収まる確率を求めてみましょう。
=POISSON.DIST(6, 4, TRUE)
結果は 約0.8893(約88.9%)です。問い合わせが6件以下に収まる確率は約89%ということがわかります。
ここから「7件以上来る確率」も計算できますよ。全体の確率(100%)から6件以下の確率を引くだけです。
=1-POISSON.DIST(6, 4, TRUE)
結果は 約0.1107(約11.1%)になります。
「ちょうど」「以下」「以上」の3パターン早見表
実務では、求めたい確率のパターンによって数式を使い分けます。次の表を覚えておくと迷いません。
| 求めたい確率 | 数式 |
|---|---|
| ちょうどX回 | =POISSON.DIST(X, 平均, FALSE) |
| X回以下 | =POISSON.DIST(X, 平均, TRUE) |
| X回以上(X含む) | =1-POISSON.DIST(X-1, 平均, TRUE) |
| X回未満 | =POISSON.DIST(X-1, 平均, TRUE) |
| A回以上B回以下 | =POISSON.DIST(B, 平均, TRUE)-POISSON.DIST(A-1, 平均, TRUE) |
「以上」を求めるときは、X-1(X未満まで)の累積を1から引くのがポイントですよ。
POISSON.DIST関数の実践的な活用例
活用例1: 製造ラインの不良品管理
製造ラインで1日あたり平均2個の不良品が発生するとします。不良品が0個の日の確率を求めてみましょう。
=POISSON.DIST(0, 2, FALSE)
結果は 約0.1353(約13.5%)です。不良品がゼロになる日は、だいたい7〜8日に1回くらいの割合ですね。
さらに「不良品が5個以上出る確率」を知りたいなら、次のように計算します。
=1-POISSON.DIST(4, 2, TRUE)
結果は 約0.0527(約5.3%)です。5個以上の不良品が出る確率は約5%なので、もし実際に5個以上出たら通常の範囲を超えている可能性がありますよ。品質管理では、こうした閾値を「管理限界」として設定し、異常検知の判断基準として活用できます。
活用例2: セル参照を使った確率一覧表
実務では、複数のイベント数に対する確率をまとめて確認したいことが多いですよね。セル参照を使って確率一覧表を作ってみましょう。
セルB1に平均値「4」を入力し、A列にイベント数(0〜10)を並べます。B列に次の数式を入力してください。
=POISSON.DIST(A2, $B$1, FALSE)
これをB列の下方向にコピーすると、各イベント数に対する確率が一覧で表示されます。平均値を$B$1で絶対参照にしているので、コピーしても参照先がずれません。
C列に累積確率(TRUE)も並べると、「X件以下に収まる確率」と「ちょうどX件の確率」を同時に確認できますよ。
=POISSON.DIST(A2, $B$1, TRUE)
このような確率一覧表を作っておくと、どのイベント数の確率が高いかがひと目でわかります。さらにA列とB列を選択して散布図(折れ線)を作ると、ポアソン分布のグラフが描けるので、視覚的にイベントの起こりやすさを把握できますよ。
活用例3: 問い合わせ件数の人員計画
平均10件のところに何件まで来る可能性があるかを把握すると、シフト人員の計画にも使えます。たとえば「1時間あたり問い合わせが15件以下に収まる確率は?」を計算するなら、次のとおりです。
=POISSON.DIST(15, 10, TRUE)
結果は 約0.9513(約95.1%)です。「1時間あたり15件まで対応できる体制を組んでおけば、95%の時間帯はカバーできる」という人員配置の根拠データになります。
活用例4: Webサイトのサーバー負荷予測
Webサイトに1分間あたり平均30アクセスがある場合、ピーク時にどこまで耐えられる設計にすべきかを検討するのに使えます。
たとえば「1分間に50アクセス以上来る確率」を求めるなら、次の数式です。
=1-POISSON.DIST(49, 30, TRUE)
結果は 約0.0301(約3.0%)です。50アクセス以上の負荷が来る確率は3%ほどなので、サーバーの処理能力を50アクセス/分以上に設定しておけば、ほとんどの時間帯で問題なくさばける計算になります。
「99%カバーするには何アクセス/分まで耐えればいい?」を逆算したい場合は、累積確率が0.99になるイベント数を表で探すか、TRUEを使った数式を縦に並べて目視確認する方法が手軽ですよ。
活用例5: 在庫切れリスクの試算
1日平均3個売れる商品があるとして、在庫を10個に設定したときの在庫切れリスクを試算してみましょう。「1日に11個以上売れる確率」を求めれば、それが在庫切れのリスクになります。
=1-POISSON.DIST(10, 3, TRUE)
結果は 約0.00029(約0.029%)です。在庫10個ならまず在庫切れは起きない計算ですね。逆に在庫を5個に絞ると、
=1-POISSON.DIST(5, 3, TRUE)
結果は 約0.0839(約8.4%)と、約8%の確率で在庫切れが発生する見込みになります。発注ロットや安全在庫を決めるときの定量的な判断材料として活用できますよ。
POISSON.DIST関数のよくあるエラーと対処法
#NUM!エラー
次のいずれかに該当すると発生します。
- イベント数に負の値を指定した場合
- 平均に0以下の値を指定した場合
イベント数は0以上、平均は0より大きい値を指定する必要がありますよ。
#VALUE!エラー
引数に数値以外の文字列を指定すると発生します。セル参照を使っている場合は、参照先のセルに数値が正しく入っているか確認してみてください。空白セルを参照していると0として扱われ、平均が0なら#NUM!になることもあります。
#NAME?エラー
関数名のスペルミスが原因です。「POISSON.DIST」のピリオドを忘れたり、「POISN」のように綴りを間違えたりしていないか確認してみてください。Microsoft 365 ではピリオド付きの新名称が標準ですよ。
POISSON関数との違い・似た関数との使い分け
POISSON関数(互換性関数)
POISSON関数はExcel 2007以前のバージョンとの互換性のために残されている関数です。引数や計算結果はPOISSON.DIST関数とまったく同じですが、将来のバージョンで廃止される可能性があります。
Microsoft 365 で新しくExcelファイルを作る場合は、POISSON.DIST関数を使うようにしましょう。
似た関数との使い分け
ポアソン分布以外の確率分布を扱いたい場合は、以下の関数を使い分けてください。
| 関数 | 用途 | 使う場面 |
|---|---|---|
| POISSON.DIST | ポアソン分布の確率 | 「一定期間に平均λ回起きるイベント」の確率を求めたいとき |
| BINOM.DIST関数 | 二項分布の確率 | 「成功/失敗」が決まった試行回数で何回成功するかを求めたいとき |
| NEGBINOM.DIST関数 | 負の二項分布の確率 | 指定回数の成功までに何回失敗するかを求めたいとき |
| EXPON.DIST関数 | 指数分布の確率 | イベント間の「待ち時間」を扱いたいとき |
| NORM.DIST関数 | 正規分布の確率 | 連続的な数値の分布を扱いたいとき |
| PROB関数 | 指定した範囲内の確率 | データの発生確率が個別にわかっているとき |
| EXP関数 | 自然対数の底eのべき乗 | ポアソン分布の数式を手動で組み立てたいとき |
| CRITBINOM関数 | 二項分布の累積確率の臨界値 | 「成功/失敗」の試行回数が決まっている確率の臨界値を求めたいとき |
POISSON.DIST関数は「回数に上限がないランダムなイベント」に向いています。一方、試行回数が決まっていて成功・失敗が問題になる場合は、二項分布のBINOM.DIST関数などが適切ですよ。
なお、二項分布で試行回数nが大きく確率pが小さい場合(n×p=λと置く)は、ポアソン分布で近似計算するのが定石です。
また、「イベントとイベントの間隔(待ち時間)」を扱いたい場合は、ポアソン分布と表裏一体の関係にあるEXPON.DIST関数(指数分布)を使うとよいでしょう。
よくある質問(FAQ)
Q1. POISSON.DIST関数とPOISSON関数のどちらを使えばよいですか?
A. Microsoft 365 / Excel 2010 以降を使っているなら、POISSON.DIST関数を選びましょう。POISSON関数はExcel 2007以前との互換性のために残されているだけで、今後のバージョンで廃止される可能性があります。計算結果はどちらも同じですが、新しく作るファイルではPOISSON.DIST関数を使うのが安全です。
Q2. ポアソン分布は「どんなデータ」に使える分布ですか?
A. 次の条件をだいたい満たすデータに向いています。
- 一定の期間や範囲のなかで起きる「回数」を数えるデータ
- イベントが独立してランダムに起きる
- 平均発生回数(λ)が一定で安定している
- 回数の上限がない(理論上は何回でも起こりうる)
たとえば、コールセンターの問い合わせ件数、Webサイトのアクセス数、製造ラインの不良品個数などが典型例です。「100回中の成功回数」のように試行回数が決まっているデータは、ポアソン分布ではなくBINOM.DIST関数(二項分布)が適切ですよ。
Q3. イベント数や平均(λ)に小数を入れたらどうなりますか?
A. イベント数に小数を入れた場合は、小数点以下が切り捨てられて整数として扱われます。たとえばPOISSON.DIST(3.7, 4, FALSE)はPOISSON.DIST(3, 4, FALSE)と同じ結果になります。エラーにはなりませんが、意図しない結果になるので整数で渡すのが基本ですよ。
平均(λ)については小数のまま使えます。「1時間あたり平均2.5件」のように、実測値が小数になることはよくあるので、こちらは小数で指定して問題ありません。ただし0以下を指定すると#NUM!エラーになるので注意してください。
まとめ
この記事では、ExcelのPOISSON.DIST関数について解説しました。
- POISSON.DIST関数は、ポアソン分布に基づいてイベントの発生確率を計算する関数
- 関数形式にFALSEを指定すると「ちょうどX回の確率」、TRUEで「X回以下の確率」が得られる
- 「X回以上の確率」は
=1-POISSON.DIST(X-1, 平均, TRUE)で求められる - コールセンターの問い合わせ予測、不良品管理、人員計画、サーバー負荷予測、在庫管理など、ビジネスの現場で幅広く活用できる
- 試行回数が決まっている確率はBINOM.DIST関数、待ち時間はEXPON.DIST関数など、似た関数との使い分けも意識する
ポアソン分布と聞くと難しそうに感じるかもしれませんが、やっていることはシンプルです。「平均的にこのくらい起きることが、実際にこの回数になる確率はどのくらい?」を求めるだけですよ。ぜひ実務で試してみてください。