내 결혼식에 얼마나 많은 사람들이 올지 계산할 수 있도록 도와주세요! 각 사람에게 비율을 부여하고 추가 할 수 있습니까?


37

나는 결혼식을 계획하고있다. 내 결혼식에 얼마나 많은 사람들이 올지 추정하고 싶습니다. 나는 사람들의 목록과 그들이 참석할 확률을 백분율로 만들었습니다. 예를 들어

Dad 100% Mom 100% Bob 50% Marc 10% Jacob 25% Joseph 30%

나는 백분율을 가진 약 230 명의 사람들의 명부를 가지고있다. 내 결혼식에 얼마나 많은 사람들이 참석할 수 있는지 어떻게 알 수 있습니까? 단순히 백분율을 더하고 100으로 나눌 수 있습니까? 예를 들어, 10 %의 기회가 올 때마다 10 명을 초대하면 1 명을 기대할 수 있습니까? 올 확률이 50 % 인 20 명을 초대하면 10 명을 기대할 수 있습니까?

업데이트 : 140 명이 내 결혼식에 왔습니다 :). 아래에 설명 된 기술을 사용하여 약 150을 예측했습니다. 너무 초라하지 않습니다!


43
나는 당신이 결혼하는 사람에 대한 인물을 볼 수 없습니다. 그것이 가장 중요한 수량입니다.
Nick Cox

6
나는 당신의 기술을 나의 결혼식에 사용했고 잘 작동했습니다. 우리는 약 80 명을 예측했고 85 명 정도를 얻었습니다. 스프레드 시트에 해당 사용자가 모두 있으면 동일한 스프레드 시트를 사용하여 감사 메모를 보낸 사람 등을 추적 할 수 있습니다.
Eric Lippert

2
관련 : timharford.com/2013/10/guest-list-angst-a-statistical-approach . 그만한 가치를 위해 저자의 개인 블로그 링크를 선택했지만 기사는 파이낸셜 타임즈의 칼럼에 있습니다.
Steve Jessop

@EricLippert 나는 결혼식과 비슷한 것을 시도했지만 성공하지 못했습니다. 하루 중 심한 뇌우가 일어 났으며 한 시간 이상 출퇴근길이 30 세 미만인 모든 사람은 나타나지 않았습니다.
OSE

3
@NickCox 또한 그들은 자신의 것을 잊었다.
JFA

답변:


32

초대 된 사람의 결혼식에 대한 결정이 독립적이라고 가정하면, 결혼식에 올 손님의 수는 반드시 성공 확률이 반드시 같지 않은 Bernoulli 랜덤 변수의 합으로 모델링 할 수 있습니다. 이것은 포아송 이항 분포에 해당합니다 .

하자 에서 당신의 결혼식에 올 것이다 사람의 총 수에 해당하는 임의의 변수가 될 명을 초대했다. 예상되는 참가자 수는 실제로 개별 '' ''확률 , 즉 신뢰 구간의 도출은 확률 질량 함수 형식으로 간단하지 않습니다 . 그러나 몬테카를로 시뮬레이션 으로 근사하기 쉽습니다 .N p i E ( X ) = N i = 1 p i .XNpi

E(X)=i=1Npi.

다음 그림은 230 명의 초대 된 사람 (왼쪽)에 대한 일부 가짜 표시 확률을 사용하여 10000 개의 시뮬레이션 된 시나리오 (오른쪽)를 기반으로 결혼식에 참가자 수를 분배하는 예를 보여줍니다. 이 시뮬레이션을 실행하는 데 사용되는 R 코드는 다음과 같습니다. 신뢰 구간의 근사값을 제공합니다.

여기에 이미지 설명을 입력하십시오

## Parameters
N      <- 230    # Number of potential guests
nb.sim <- 10000  # Number of simulations

## Create example of groups of guests with same show-up probability
set.seed(345)
tmp    <- hist(rbeta(N, 3, 2), breaks = seq(0, 1, length.out = 21))
p      <- tmp$breaks[-1]    # Group show-up probabilities
n      <- tmp$counts        # Number of person per group

## Generate number of guests by group
guest.mat <- matrix(NA, nrow = nb.sim, ncol = length(p))
for (j in 1:length(p)) {
    guest.mat[, j] <- rbinom(nb.sim, n[j], p[j])
}

## Number of guest per scenario
nb.guests <- apply(guest.mat, 1, sum)

## Result summary
par(mfrow = c(1, 2))
barplot(n, names.arg = p, xlab = "Probability group", ylab = "Group size")
hist(nb.guests, breaks = 21, probability =  TRUE, main = "", xlab = "Guests")
par(mfrow = c(1, 1))

## Theoretical mean and variance
c(sum(n * p), sum(n * p * (1-p)))
#[1] 148.8500  43.8475

## Sample mean and variance
c(mean(nb.guests), var(nb.guests))
#[1] 148.86270  43.23657

## Sample quantiles
quantile(nb.guests, probs = c(0.01, 0.05, 0.5, 0.95, 0.99))
#1%     5%    50%    95%    99% 
#133.99 138.00 149.00 160.00 164.00 

1
와우 환상적이다. 이것이 정확히 어떤 종류의 시뮬레이션입니까?
Behacad

4
그것은이다 몬테카를로 시뮬레이션
QuantIbex

"그룹 크기"를 손님 수로 어떻게 변환합니까? 나는 왼쪽에 당신과 같은 그림이 있지만 그것을 오른쪽 그림으로 바꾸는 방법을 잘
모르겠습니다

이것은 답변에 제공된 코드의 11 ~ 18 행에서 수행됩니다. 시나리오 j에서는 이항 분포를 사용하여 20 개의 확률 그룹 각각에 대해 "쇼업"수와 해당 그룹을 표시 할 확률을 생성합니다.
QuantIbex

18

지적했듯이 기대치는 단순히 추가됩니다.

그러나 기대치가 그다지 유용하지 않다는 것을 알면 주변의 변동 가능성에 대한 감각이 필요합니다.

고려해야 할 세 가지 사항이 있습니다.

  • 자신의 기대에 대한 개인의 변동

  • 사람들 사이의 의존성. 둘 다 올 수도있는 부부는 둘 다 참석하거나 둘 다없는 경향이 있습니다. 어린 자녀는 부모 없이는 참석하지 않습니다. 어떤 경우에는 다른 사람이있을 것을 알면 오지 않을 수도 있습니다.

  • 확률 추정 오류. 이러한 확률은 추측 일뿐입니다. 다소 다른 추측의 영향을 고려하고 싶을 수도 있습니다 (다른 사람의 수치에 대한 평가 일 수도 있음).

첫 번째는 정규 근사 또는 시뮬레이션을 통해 계산할 수 있습니다. 두 번째는 사람들에 대한 다양한 가정이나 종속성의 일부 분포를 고려하여 시뮬레이션 될 수 있습니다. (세번째 항목은 더 어렵다.)


의견의 후속 질문을 해결하기 위해 편집 :

귀하의 구절을 올바르게 이해한다면 4 인 가족의 경우, 4 명 또는 50 명이 올 확률이 50 %입니다. 확실히 2의 예상 수이지만 기대치에 대한 변동성에 대한 아이디어를 원할 것입니다.이 경우 실제 상황을 4의 0 / 50 % 중 50 %로 유지하려고합니다.

모든 사람들을 독립 그룹으로 나눌 수 있다면, 첫 번째 근사치 (그러한 그룹이 많음)는 독립 그룹 전체에 평균과 분산을 더한 다음 합을 정상으로 취급하는 것입니다 (연속성 수정 포함). 보다 정확한 방법은 프로세스를 시뮬레이션하거나 수치 적 컨벌루션을 통해 분포를 정확하게 계산하는 것입니다. 두 가지 접근 방식은 모두 간단하지만 근사치 레이어가 이미 너무 많기 때문에이 특정 응용 프로그램에는 불필요한 정밀도 수준입니다. 실의 크기를 가장 가까운 발로 알려주고 필요한 페인트의 양을 계산하는 것과 같습니다. 가장 가까운 밀리리터-추가 정밀도는 의미가 없습니다.

따라서 (간단 성을 위해) 4 개의 그룹이 있다고 상상해보십시오.

1) 그룹 A (1 개인)-70 % 참석 확률

2) 그룹 B (1 개인)-60 % 참석 확률

3) 그룹 C (4 가족)-0 : 0.5 4 : 0.5 (사람이 집에 있으면 아무도 오지 않을 것입니다)

4) 그룹 D (2의 커플)-0 : 0.4 1 : 0.1 2 : 0.5 (즉, 둘 다의 50 % 확률, 10 %의 확률로 정확히 하나가 올 것입니다 (예 : 다른 사람이 업무 약정이 있거나 아플 경우)

그런 다음 다음과 같은 평균과 차이를 얻습니다.

      mean   variance
  A    0.7     0.21
  B    0.6     0.24
  C    2.0     4.0
  D    1.1     0.89

 Tot   4.4     5.34

따라서이 경우 정상적인 근사값은 매우 거칠지 만 7 명 이상은 (5 % 정도) 거의 불가능할 것이며 6 명 이하는 대략 75-80 %의 시간에 발생합니다.

[보다 정확한 방법은 프로세스를 시뮬레이션하는 것이지만, 컷 다운 예제가 아닌 전체 문제에 대해서는 이미 너무 많은 근사치가 있기 때문에 불필요합니다.]


그룹-종속성을 포함하는 결합 된 배포가 이루어지면 전반적인 공동 의존성 (예 : 악천후)을 적용하거나 상황에 따라 이러한 상황을 단순히 보증하거나 무시하고 싶을 수도 있습니다. .


5
종속성 언급에 +1 이러한 현상은 날씨 및 여행 조건과 같은 대인 관계 이외의 이유로 발생합니다. 그들 중 많은 사람들이 불확실성의 범위를 넓히는 긍정적 상관 관계를 유도합니다. 추정치가 물류 (식사, 좌석 등)를 제공하는 데 사용될 경우 변동을 정확하게 평가하는 것이 중요합니다. 결혼 신청에서 교육받은 추측보다 더 많은 것을 할 수는 없지만 이러한 통계적 현상을 질적으로 이해하면 더 나은 추측으로 이어질 수 있습니다.
whuber

@whuber 날씨와 같은 다른 의존성 소스에 대한 좋은 지적. 어떤 상황에서는 그러한 것들이 내가 언급 한 효과를 쉽게 휩쓸 수 있습니다.
Glen_b

의존성을 쉽게 고려할 수있는 방법은 무엇입니까? 예를 들어, 두 자녀를 둔 부부를 알고 있다면 부모가 약 50 %의 기회를 가질 것으로 기대합니다. 그들이 오면 자녀를 데려 올 것임을 알고 있습니다. 각 사람에게 50 %의 속성을 부여하고 기본적으로 2 명이 올 것이라고 가정합니까?
Behacad

2
@Behacad : 주어진 그룹에 대해 모두 또는 없음의 문제라는 것을 알고 있다면 그룹이 단일 단위로 올 확률을 추정하고 그룹의 개인 수에 따라 그룹에 가중치를 부여 할 수 있습니다. 귀하의 추정치에도 오차 한계가 포함되는 것이 좋습니다.
Nick Stauner

감사합니다. 나는 백분율과 그 비율을 가진 사람들의 수를 가진 작은 테이블을 가지고 있지만, 지금 무엇을 해야할지 정확히 모른다. 무엇을 추가해야합니까? 어떤 차이가 있습니까? (100 % -52, 90 % -21, 80 % -34, 70 % -16,60 % -32,50 % -35,40 % -25,30 % -11,20 % -22,10 % -15 , 0 % -9)
Behacad

5

(이에 대한 내 이전의 의견을 무시하십시오-방금 기대와 다른 것을 혼동하고 있음을 깨달았습니다.) 본질적으로 사람들의 수에 대한 기대를 찾으려고 노력하고 있다고 가정하면 이론적으로 각 사람이 나타날 확률을 추가 할 수 있습니다 그렇게하기 위해.

이는 누군가가 또는 값을 취하는 것으로 간주 할 수 있고 기대 값이 선형 연산자이기 때문입니다.101

그러나 이것은 단지 당신에게 기대되는 가치를 제공합니다-더 이상의 가정이 없다면, 사람들의 출현과 같은 것들을 추정하는 것이 어려워 보일 것입니다.

그 외에, 여기에 막연하게 관련 BBC 기사.


감사합니다! 예를 들어, 10 명에게 10 %의 기회가 올 것이라고 생각하면, 예를 들어 1 명이 올 것이라고 추측 할 수 있습니다.
Behacad

이론적으로는 그렇지만 더 이상 가정하지 않고 더 유용한 것을 구성하는 것은 어려운 것 같습니다 (예 : 신뢰 구간).

감사합니다. 신뢰 구간에 어떻게 도달 할 수 있습니까?
Behacad

여러 가지 이유로 완전히 확실하지 않습니다. (아마도 그것에 대한 자세한 답변을 제공하기 위해 몇 가지 것들을 찾는 데 더 많은 시간을 할애해야 할 것입니다.)

4

많은 수의 경우 80 %가 예상됩니다. 제안한 세부 분석에서 계산에 오류 만 추가하는 상황 일 수 있습니다.
예를 들어, Marc의 잠재적 참석은 실제로 Joseph의 1/3입니까? 그리고 요셉은 실제로 30 %입니까, 아니면 25 %일까요? 많은 수에 도달하면이 모든 분석보다 80 % 더 유효하게됩니다. 방금 결혼식에서 돌아 왔어요 550 명이 초대되었습니다. 452 명이 참석했습니다. 홀을 계획하고 출장 요리사와 이야기하기 시작하면 440의 초기 추정치가 좋았습니다.

토스트에서 커플까지 줄을 줄 수 있습니까? "부인이 행복하지만 행복하지 않다면, 아내가 불행한 것보다 훨씬 행복하지만 행복하다는 것을 기억하십시오."


감사합니다! 한 가지 우려는 사람들이 다양한 거리에서 온다는 것입니다. 꽤 먼 곳은 길가에 있습니다.
Behacad

3
이 수치는 문화에 따라 다를 수 있습니다.
Juho Kokkala

@ Juho-그럴 수도 있습니다. 나는 미국에 있고 최근의 예에서, 약 절반의 초대를위한 목적지 결혼식, 즉 결혼식은 신부의 고향에있었습니다. 문화적 차이가 투표율에 어떤 영향을 미치는지 궁금하지만, 당신이 옳다고 생각합니다.
JTP-Monica에게 사과

4
이것은 (당신이 이런 종류의를 찾을 때까지) 이론적으로 존재하지만 실제로 이상한 것 같은 추정의 훌륭한 예입니다 주어진 어떤 데이터 세트는 소정 개수 (이 경우 80 %)을 반환합니다. 계산이 쉽고 매우 저렴하며 (데이터 수집 비용을 0으로 줄일 수 있음) 분산이 없습니다. Bayes (원자 이전의 경우)이며 허용됩니다. "상세한 분석"을 피함으로써 해결하기 어려울 수있는 편향과 일관성에 대한 의문이 여전히 남아 있습니다.
whuber

2

방금 결혼 한 통계 학자로서 JoeTaxpayer가 정답을 가지고 있다고 말할 것입니다. 대부분의 사람들이 현지인이라면 정확할 수는 있지만 80 %의 수치는 조금 높은 수치입니다.

그러나 그럼에도 불구하고, 사람들이 참석하는 이전 확률에 많은 변수가 있다고 가정하면 실제로 존재하는 것 이상을 생각합니다. 적극적으로 당신을 싫어하는 사람들을 초대하지 않는다고 가정하면, 거의 모든 사람이 자신의 수단을 가진 사람을 찾아 올 것입니다. 그들이 참석하지 못하게 무언가가있을 것입니다. 여행을해야하는 사람들에게는 소요 시간과 비용이 증가하므로 30-35 %의 여행자가 참석하지 않습니다 (거리에 따라 다름). 그렇지 않으면 확률을 일정하게 유지하십시오 (부모님이 "오, 너무 오스틴으로 날아 가지 않을 것입니다, 우리는 그들을 초대하고 싶습니다 ..."라고 말하더라도). 특히 열린 바에서 즐거운 리셉션을 받으면 사람들은 일반적으로 꼭 필요한 경우가 아니면 건너 뛰지 않습니다.

어쨌든, 결혼을 축하합니다. 결혼 생활을 할 확률에 관해서는, 항상 좋은 글입니다 : http://users.nber.org/~bstevens/papers/Marital_Stability.pdf

:-)


1

모든 확률을 합산하십시오. 예상되는 인원 수입니다.

i = 1..N 개의 이벤트가 있으며 각각 확률은 입니다. 올 것으로 예상되는 사람들의 수는 . 여기서 표시 변수는 사람이 나타나면 1과 같고 그렇지 않으면 0입니다.i 1 i P i 1 iPii1iPi1i

물론, 우리는 누군가가 올 것인지 아닌지는 다른 사람들의 출석에 의존하지 않는다고 가정합니다. 이 가정은 단순히 잘못되었습니다. 부부를 고려하면 상관 관계가 높습니다.

상관 관계에 대한 데이터가 없으므로 커플을 단위로 처리하는 것이 가장 좋습니다 (예 : ). 여기서 는 커플이 표시 될 확률입니다.P i2×1iPiPi


1

결혼식을 위해 두 가지 목록을 만들었습니다. 참석 가능성 (80 %)과 참석하지 않을 가능성 (20 %)입니다. 어떤 이유로 든 더 세련된 평가에 관계없이 두 그룹 중 하나에 초대 된 모든 사람을 할당했습니다. 나는 2 명의 사람에 의해 떠났다. N = 1. 순전히 휴리스틱.


내가 요청할 수 있습니다? 최종 % 투표율은 얼마입니까?
JTP-Monica에게 사과 함

72 %가 예라고 대답했지만, 취소 날짜가 몇 개인 지 잊어 버렸습니다.
michaelcarniol

0

나는 당신이 100으로 나눌 필요가 없다는 것을 아무도 지적하지 않았습니다. 당신의 백분율은 Schrödinger의 고양이와 같이 당신이 사람의 일부를 얻을 수 없다는 것을 이해하면서 사람의 예상 부분으로 볼 수 있습니다. 출석 여부에 관계없이 각 사람의 출석 상태는 이벤트 순간에 완전히 해결됩니다.

귀하의 백분율 범위는 0 % (아무도 표시되지 않음)에서 100 % (모두 표시되는 사람 모두)까지이므로 10 명과 20 명이 포함 된 두 예에서 각 부분의 예상 값을 합산했습니다. 사람이 나타나고, "사람"인 유닛을 가진 숫자를 얻었습니다.

QuantIbex의 탁월한 답변에서 눈에 띄는 방정식은 백분율을 합하면 이벤트에 예상 인원이 있고 부서가없는 것으로 나타났습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.