엑셀 푸아송 분포: 사건 횟수와 음이항 분포를 쓰는 경우
한마디로: 사건이 알려진 평균 비율로 한 번에 하나씩 일어날 때, 한 주나 한 달, 한 해에 몇 번 일어나는지입니다.
푸아송 분포는 일주일간 접수된 불만이나 한 달간의 고장처럼, 사건이 알려진 평균 비율로 서로 독립적으로 일어날 때 정해진 기간의 사건 횟수를 나타냅니다. 숫자 하나, 평균으로 정해집니다. 주당 평균 불만이 4건이면 불만이 하나도 없는 주의 확률은 1.8%이고, 8건 이상인 주의 확률은 5.1%입니다. 엑셀에는 POISSON.DIST는 있지만 역함수가 없어서, 난수 횟수는 누적확률의 작은 표로 만듭니다. 횟수가 푸아송 분포가 허용하는 것보다 더 들쭉날쭉하면 음이항 분포를 씁니다.
푸아송 분포는 무엇인가
사건이 일정한 평균 비율로 무작위하게, 한 번에 하나씩 도착한다고 생각해 보세요. 전화, 불량, 보험금 청구, 대수가 많은 장비군의 고장이 그런 경우입니다. 한 주에 일어나는 횟수는 0, 1, 2… 같은 정수이고, 그 분포는 평균 횟수에만 달려 있습니다. 주마다 얼마나 들쭉날쭉한지도 평균이 정합니다. 표준편차는 평균의 제곱근이며, 주당 불만이 평균 4건이면 2입니다. 이런 사건 사이의 시간은 지수 분포를 따르며, 여기서는 평균 1.75일입니다.
차트 읽는 법: 막대는 시뮬레이션한 10,000주 중 불만이 그 건수인 주의 비중이고, 점은 이론 확률입니다. 막대와 점이 일치합니다.
가장 많은 주는 불만이 3건이나 4건인 주입니다(각각 19.5%). P10은 2이고 P90은 7이며, 열 주 중 적어도 여덟 주는 그 사이에 들어갑니다.
엑셀의 푸아송 분포
POISSON.DIST(k, mean, FALSE)는 사건이 정확히 k번일 확률을, TRUE를 쓰면 k번 이하일 확률을 돌려줍니다. 8건 이상일 확률은 =1-POISSON.DIST(7, 4, TRUE)이고 값은 5.1%입니다. POISSON.INV는 없으므로 난수 횟수에는 단계가 하나 더 필요합니다. 이 엑셀 파일은 Tables 시트에 사건 0건에서 99건까지의 누적확률을 나열하고, 그중 난수 u보다 작은 것이 몇 개인지 셉니다. 그 개수는 누적확률이 u에 이르는 가장 작은 k이며, 바로 푸아송 추출값입니다. 셀 하나에 쓰면 =COUNTIF(Tables!B$3:B$102,"<"&RAND())입니다.
| 셀 | 수식 | 값 |
|---|---|---|
| 난수 u(I12) | =RAND() | |
| 추출값(J12) | =COUNTIF(Tables!B$3:B$102, | |
| 셀 하나로 추출 | =COUNTIF(Tables!B$3:B$102, | |
| 평균(K12) | =D12 | 4 |
| P10 (L12) | =COUNTIF(Tables!B$3:B$102, | 2 |
| P90 (M12) | =COUNTIF(Tables!B$3:B$102, | 7 |
수치 확인: 이론값과 엑셀, xellstorm의 10,000개 추출값 비교
| 이론값 | 엑셀, RAND() | xellstorm | |
|---|---|---|---|
| 평균 | 4 | 3.99 | 4.00 |
| 표준편차 | 2 | 1.98 | 2.00 |
| P10 | 2 | 2 | 2 |
| P50(중앙값) | 4 | 4 | 4 |
| P90 | 7 | 7 | 7 |
엑셀은 RAND()로 완전히 무작위하게 뽑고, xellstorm은 추출값을 범위 전체에 고르게 퍼뜨립니다(라틴 하이퍼큐브 샘플링). 그래서 통계값이 이론값에 더 가깝게 나옵니다.
음이항 분포: 횟수가 푸아송 분포보다 들쭉날쭉할 때
실제 횟수는 푸아송 분포보다 고르지 않은 경우가 많습니다. 수요에는 바쁜 달과 한가한 달이 있고, 불량은 한꺼번에 나오며, 보험금 청구는 날씨가 나쁘면 늘어납니다. 과거 이력을 확인하세요. 횟수가 푸아송 분포가 허용하는 것보다 훨씬 들쭉날쭉하면(분산, 즉 표준편차의 제곱이 평균보다 분명히 크면) 푸아송 분포는 한가한 기간과 바쁜 기간을 모두 실제보다 작게 봅니다. 음이항 분포는 이 추가적인 퍼짐을 나타내는 두 번째 모수를 더합니다. 같은 평균 4에 분산이 8일 때를 비교하면 다음과 같습니다.
차트 읽는 법: 선은 한 주에 사건이 0건, 1건, 2건, … 일어날 확률을 이은 것입니다. 음이항 분포는 양쪽 끝이 더 높습니다. 사건이 없는 주도, 많은 주도 더 많습니다.
| 푸아송 분포 | 음이항 분포 | |
|---|---|---|
| 분산 | 4 | 8 |
| 0건일 확률 | 1.8% | 6.3% |
| 8건 이상일 확률 | 5.1% | 11.3% |
| P10 – P90 | 2 – 7 | 1 – 8 |
| 셀 | 수식 | 값 |
|---|---|---|
| 난수 u(I13) | =RAND() | |
| 추출값(J13) | =COUNTIF(Tables!C$3:C$102, | |
| 셀 하나로 추출 | =COUNTIF(Tables!C$3:C$102, | |
| 평균(K13) | =D13*(1-F13)/F13 | 4 |
| P10 (L13) | =COUNTIF(Tables!C$3:C$102, | 1 |
| P90 (M13) | =COUNTIF(Tables!C$3:C$102, | 8 |
엑셀의 NEGBINOM.DIST(k, n, p, TRUE)는 누적확률을 돌려주고, 같은 표 방식으로 추출값을 만듭니다. 추출값은 =COUNTIF(Tables!C$3:C$102,"<"&RAND())입니다. 모수는 n과 p입니다(교과서식 정의로는 n번째 성공이 나오기 전의 실패 횟수). 평균과 분산에서 구하면 p = 평균 / 분산, n = 평균² / (분산 − 평균)이며, 여기서는 p = 0.5, n = 4입니다. 재주문점 예제가 월 수요를 음이항 분포에서 뽑는 것도 이 때문입니다.
푸아송, 음이항, 이항 분포를 쓰는 경우
- 푸아송 분포는 일정한 비율로 일어나는 독립 사건의 횟수에 씁니다. 실질적으로 상한이 없는 경우입니다: 도착, 전화, 불량, 큰 모집단의 고장.
- 음이항 분포는 같은 종류의 횟수이지만 이력의 변동이 평균보다 큰 경우에 씁니다: 수요, 보험금 청구, 몰려서 생기는 불량.
- 이항 분포는 기회가 정해진 횟수일 때 씁니다: 50개 묶음의 불량품 수, 200명 중 제안을 수락하는 고객 수.
xellstorm에서 푸아송 분포 입력하는 법
- 셀을 입력으로 만들고 분포 단계에서 푸아송 분포를 고른 뒤 평균을 입력합니다. 또는 음이항 분포를 고르고 n과 p를 입력합니다.
- 과거 횟수가 있으면 입력을 선택하고 사이드 패널의 “데이터로” 탭을 씁니다. 정수 데이터에는 연속형 모양과 함께 푸아송 분포와 음이항 분포를 적합하고 순위를 매깁니다. 횟수의 변동이 평균을 넘지 않으면 음이항 분포는 건너뛰고 푸아송 분포를 쓰라고 알려 줍니다.
변환되는 애드인 함수는 RiskPoisson, VosePoisson, PsiPoisson(푸아송 분포), RiskNegbin, VoseNegBin, PsiNegBinomial(음이항 분포)입니다.
자주 묻는 질문
엑셀에서 푸아송 난수는 어떻게 만드나요?
엑셀에는 푸아송 역함수가 없습니다. 한 열에 k = 0, 1, 2, …를 적고 그 옆에 POISSON.DIST(k, mean, TRUE)를 쓴 뒤, 그 누적확률 중 RAND()보다 작은 것의 개수를 셉니다. 표가 B3:B102에 있다면 =COUNTIF(Tables!B$3:B$102,"<"&RAND())입니다. 표의 마지막 확률이 표시 정밀도로 1이 되도록 표를 충분히 길게 만드세요(평균 4이면 30행이면 충분합니다).
POISSON.DIST의 TRUE와 FALSE는 무엇이 다른가요?
FALSE는 사건이 정확히 k번일 확률을, TRUE는 k번 이하일 확률을 돌려줍니다. 평균 4에서 정확히 4번일 확률은 19.5%이고, 8번 이상일 확률은 1에서 7번 이하의 누적확률을 뺀 5.1%입니다.
푸아송 분포와 음이항 분포 중 무엇을 써야 하나요?
횟수의 분산을 평균과 비교하세요. 거의 같으면 푸아송 분포, 분명히 크면 음이항 분포를 씁니다. 음이항 분포는 추가 모수로 퍼짐을 나타냅니다. 평균이 4일 때 분산 8인 음이항 분포는 8건 이상일 확률이 11.3%이고, 푸아송 분포는 5.1%입니다.
푸아송 분포의 평균이 소수여도 되나요?
네. 평균은 한 달에 고장 0.3건처럼 평균 비율이며, 그 분포에서 나오는 횟수는 언제나 정수입니다. 평균이 1보다 작으면 대부분 0이 나오고 가끔 1이나 2가 나옵니다.
관련 글
- 가이드
어떤 확률 분포를 써야 할까요? 몬테카를로 모델의 분포 선택 가이드
질문 두 개로 알맞은 확률 분포를 찾습니다. PERT, 삼각, 정규, 로그정규, 와이블, 푸아송, 이항, 베타 등 각 분포의 용도와 엑셀 수식을 설명합니다. - 가이드
엑셀 이항 분포와 베르누이 분포: 예·아니요 사건과 n번 중 횟수
베르누이 분포는 리스크가 일어나는지 아닌지처럼 예·아니요로 갈리는 사건 하나이고, 이항 분포는 n번 시도 중 ‘예’의 횟수를 셉니다. 엑셀 수식, BINOM.DIST와 BINOM.INV, 리스크 관리대장을 설명합니다. - 재고 정책
어떤 재주문점이 비용과 품절의 균형을 맞출까요?
재주문점을 180개에서 250개로 올리면 품절이 발생하는 해의 확률이 28.0%에서 5.1%까지 줄고, 연평균 비용(2,133)은 345만큼 늘어납니다.
xellstorm은 엑셀 모델을 브라우저에서 몬테카를로 시뮬레이션하는 도구입니다. 애드인은 필요 없고, 엑셀 파일은 내 컴퓨터 밖으로 나가지 않습니다.