표본 추출 확률 계산기
샘플링한 로그에서 원래 건수를 되추정할 때의 오차범위를 계산합니다. 드문 사건이 표본에 걸릴 확률도 함께 내며, 추출률 1%로 100건이면 실제는 8,100~12,200건이라는 것을 보여 줍니다.
이 사건이 표본에 한 번이라도 걸릴 확률을 계산합니다.
3번 일어난 사건이 표본에 걸릴 확률
2.97%
뒤집으면 97.03%는 흔적도 남지 않는다는 뜻입니다
사용 방법
- 1«표본에 걸릴 확률»에서는 전체 건수와 뽑을 개수를 넣습니다.
- 2관심 있는 사건이 몇 번 일어났는지 넣으면 표본에 한 번이라도 걸릴 확률이 나옵니다.
- 3«원래 건수 되추정»으로 넘어가면 표본에서 관측된 건수와 추출률을 넣습니다.
- 4점추정과 95% 신뢰구간이 나옵니다. 구간이 얼마나 넓은지 꼭 보세요.
- 5오차를 ±10% 안으로 줄이려면 표본에 몇 건이 잡혀야 하는지도 함께 나옵니다.
자주 묻는 질문
점추정으로는 그렇지만 실제 값은 8,146~12,151건 사이 어디든 될 수 있습니다(95% 신뢰구간). ±20%쯤 되는 폭입니다. 잡힌 건수 자체가 매번 달라지는 확률변수라서 그렇습니다. 이 폭을 모르고 «어제 10,000건, 오늘 11,000건이니 10% 늘었다»고 읽으면 잡음을 신호로 오해하게 됩니다.
표본에 잡히는 건수를 늘려야 합니다. 상대 오차는 대략 z÷√k라서, ±10% 안으로 들어오려면 표본에 385건이 잡혀야 합니다(95% 기준). 추출률을 올리거나 집계 구간을 넓혀 잡히는 건수를 키우면 됩니다. 전체 건수가 아니라 «표본에 잡힌 건수»가 정확도를 정한다는 점이 중요합니다.
약 3%입니다. 97%는 흔적도 남지 않습니다. 그래서 샘플링을 걸어 둔 채 «로그에 그런 오류가 없었다»고 말하면 안 됩니다. 없는 것이 아니라 안 잡힌 것일 수 있습니다. 절반 넘게 잡히려면 69번은 일어나야 합니다.
오류처럼 드물지만 중요한 것은 샘플링에서 빼거나 100%로 따로 받는 것이 안전합니다. 트레이싱 도구라면 요청이 끝난 뒤에 결과를 보고 남길지 정하는 테일 기반 샘플링을 쓰면 오류만 골라 남길 수 있습니다. 다만 그러려면 트레이스를 잠시 모아 두어야 해서 비용이 더 듭니다.
앞의 k개는 그냥 담고 i번째(i > k)는 확률 k/i로 담되 담을 때 기존 중 하나를 무작위로 밀어내기 때문입니다. i번째가 끝까지 살아남을 확률은 «들어갈 확률 k/i»에 «그 뒤 매 단계에서 안 밀려날 확률»을 곱한 것인데, 뒤의 곱이 i/N으로 정리되어 결국 k/N이 됩니다. 전체 개수 N을 몰라도 되고 자료를 한 번만 훑으며 메모리도 k만큼만 씁니다.
이항분포를 N에 대해 뒤집어 얻는 구간이기 때문입니다. 관측 k건이 나올 만한 N의 범위를 찾는 것이라 위쪽이 아래쪽보다 넓습니다. 흔히 쓰는 어림 공식 ±z√k÷추출률은 좌우 대칭이라 건수가 적으면 크게 어긋나고, 심하면 «음수 건수»를 내놓기도 합니다.
다릅니다. N개 중 정확히 k개를 뽑으면 초기하분포이고, 각 건을 독립적으로 확률 r로 남기면 이항분포입니다. APM·트레이싱 도구가 하는 것은 대개 뒤쪽이라 표본 크기가 매번 달라집니다. N이 크면 두 결과는 사실상 같아집니다.
전송되지 않습니다. 모든 계산은 브라우저 안에서 이루어지며 입력값은 이 기기에만 남습니다.
알아두면 좋은 점
- 되추정 신뢰구간은 이항분포를 N에 대해 뒤집어 얻는 정확 구간이며, scipy로 N을 하나씩 올려 가며 구한 값과 정확히 일치하는 것을 확인했습니다.
- «표본에 걸릴 확률»은 초기하분포, «되추정»은 이항분포를 씁니다. 실제 도구가 어느 방식으로 샘플링하는지 확인하고 넣어야 합니다.
- 트레이스 단위인지 스팬 단위인지, 헤드 기반인지 테일 기반인지에 따라 «추출률»의 뜻이 달라집니다.
- 이 계산은 모든 건이 같은 확률로 뽑힌다는 것을 전제합니다. 특정 엔드포인트나 사용자만 다른 비율로 샘플링하고 있다면 그대로 쓸 수 없습니다.
- 입력한 값은 브라우저 안에서만 계산되며 서버로 전송되지 않습니다.
함께 보면 좋은 도구
마지막 검증: 2026년 8월 31일 · 결과는 참고용 추정치입니다.