帮我计算​​有多少人参加我的婚礼!我可以为每个人分配一个百分比并将其添加吗?


37

我正在计划我的婚礼。我想估计会有多少人参加我的婚礼。我创建了一个人名单以及他们参加会议的机会(以百分比表示)。例如

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

我有大约230个人的清单。我如何估计有多少人参加我的婚礼?我可以简单地将百分比相加并除以100吗?例如,如果我邀请10个人,每人有10%的几率来,我可以期待1个人吗?如果我邀请20个人有50%的机会来,我可以期望10个人吗?

更新:140人参加了我的婚礼:)。使用下面描述的技术,我预测约为150。不要太破旧!


43
我看不到你结婚的人的身影。那是最重要的数量。
Nick Cox

6
我在婚礼上用了你的技巧,效果很好。我们预测约有80人,得到85人左右。我注意到,在电子表格中包含所有这些人员之后,您还可以使用同一电子表格来跟踪向您发送感谢信的对象,诸如此类。
埃里克·利珀特

2
相关:timharford.com/2013/10/guest-list-angst-a-statistical-approach。对于它的价值,我选择了指向作者个人博客的链接,但该文章来自《金融时报》的专栏中。
史蒂夫·杰索普

@EricLippert我在婚礼上尝试了类似的方法,但没有取得成功。当天有一场非常严重的雷暴雨,上下班一个小时或更长时间的人,<30%的人都没有出现。
OSE 2014年

3
@NickCox他们也忘记了自己的。
JFA

Answers:


32

假设被邀请参加婚礼的人的决定是独立的,则可以将参加婚礼的客人人数建模为伯努利随机变量的总和,这些变量不一定具有相同的成功概率。这对应于泊松二项分布

令为一个随机变量,对应于受邀者中将参加婚礼的人数。预期的参与者数量确实是各个“显示”概率的总和,即 给定概率质量函数的形式并不容易确定置信区间。但是,它们很容易通过蒙特卡洛模拟进行近似。N p i E X = N i = 1 p iXNpi

E(X)=i=1Npi.

下图显示了一个示例,该示例基于10000个模拟场景(右)使用230个受邀人员的虚假出现概率显示了参加婚礼的人数(左)。下面显示了用于运行此模拟的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 2014年

4

您如何将“团体人数”转换为客人人数?我左边有一个像您这样的图形,但不确定如何将它变成右边的图形……
Behacad

这是在答案中提供的代码的第11至18行中完成的。对于场景j,我使用二项分布和显示该组的概率来生成20个概率组中每个组的“出现次数”。
QuantIbex 2014年

18

正如已经指出的那样,期望只是增加了。

但是,知道期望值并没有太大用处,因此您还需要对期望值的可能变化有所了解。

您需要关注三件事:

  • 围绕期望的个体的差异(一个有60%机会出现的人实际上没有实现期望;他们总是高于或低于期望)

  • 人与人之间的依赖。可能都来的夫妻往往都不会参加。年幼的孩子没有父母就不会参加。在某些情况下,如果某些人知道其他人会在那儿,他们可能会避免来。

  • 概率估计中的错误。这些概率只是猜测;您可能需要考虑一些不同猜测的影响(也许是别人对这些数字的评估)

第一种方法可以通过正态近似或模拟进行计算。第二种可以在各种假设下进行模拟,这些假设可以是特定于人们的,也可以是通过考虑依赖性的某些分布而进行的。(第三项比较困难。)


编辑以解决评论中的后续问题:

如果我能正确理解您的措辞,那么对于4口之家,您有50%的几率(无论4个人或没有)来。当然,这是预期的2,但是您也希望对预期的可变性有所了解,在这种情况下,您可能希望将实际情况保持为0/50/4的50%。

如果您可以将每个人划分为独立的组,那么一个很好的第一近似值(包含大量此类组)将是在独立组之间添加均值和方差,然后将总和视为正常值(也许可以进行连续性校正)。更精确的方法是模拟过程或通过数值卷积精确地计算分布。尽管这两种方法都非常简单,但是对于这种特定的应用程序来说,这是不必要的精度水平,因为已经有太多的近似层了-就像被告知一个房间到最近的脚的尺寸,然后计算出需要多少涂料到最接近的毫升-额外的精度毫无意义。

因此,想象一下(为简单起见),我们有四个小组:

1)A组(1个人)-出席率70%

2)B组(1个人)-60%的出席率

3)C组(一家四口)-0:0.5 4:0.5(如果有人待在家里,没人会来)

4)D组(两对,两对)-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 2014年

我如何轻松考虑依赖关系?例如,如果我知道一对夫妇有两个孩子,我希望父母有大约50%的机会来。我知道他们会来带孩子。将50%分配给每个人并基本上假设有2个人会节省下来吗?
Behacad 2014年

2
@Behacad:如果您知道给定组的问题是全有还是全无,则只需估计该组成为一个单元的可能性,然后根据组中的个体数量对组进行加权即可。我同意误差幅度也可以包含在您的估计中。
Nick Stauner 2014年

谢谢。我有一张小桌子,上面有百分比和有这个百分比的人数,但是我不知道现在该怎么办。我应该添加什么意思?有什么差异?(100%-52、90%-21、80%-34、70%-16,60%-32,50%-35,40%-25,30%-11,20%-22,10%-15 ,0%-9)
Behacad 2014年

5

(忽略我之前对此的评论-我只是意识到我将期望与其他东西混淆了。)鉴于您实质上是在寻找对出现人数的期望,因此从理论上讲,您可以添加每个人出现的可能性做到这一点。

这是因为我们可以认为某人出现的值为或,并且期望值是线性运算符。101

但是,这仅给您期望值-在没有进一步假设的情况下,似乎很难估计像出现的人的差异之类的东西,尤其是因为很公平地假设出现的人A不一定独立于出现的人B。

除此之外,这是与BBC相关的模糊文章。


谢谢!因此,仅需确认一下,例如,如果我认为10个人有10%的机会来,我可以猜测会有1个人来。
Behacad 2014年

理论上是可以的,但是在没有任何进一步假设的情况下构造任何有用的东西(例如置信区间)似乎很困难。

谢谢。我如何才能达到置信区间?
Behacad 2014年

出于多种原因,我不确定。(我可能不得不花更多的时间查找一些东西,以提供更多详细的答案。)

4

对于较大的数字,80%是您所期望的。在这种情况下,您建议进行的详细分析只会在计算中增加误差。
例如,马克的潜在出席率真的是约瑟夫的1/3吗?约瑟夫真的是30%,还是25%?当您达到大量数字时,事情就会发生,而这些数字只会使所有这些分析的有效性提高80%。我刚从婚礼回来。550邀请。452人参加。为了规划大厅并开始与餐饮者谈话,最初的估算440是可以的。

我可以从敬酒到这对夫妇提供一条路线吗?“请记住,如果您的妻子幸福,但是您不幸福,您仍然比您的妻子不幸福,但您幸福得多。”


谢谢!人们担心的是,人们将来自四面八方,并且来自不同的距离。有些很远,有些就在街上。
Behacad 2014年

3
这个数字可能取决于文化。
Juho Kokkala 2014年

@Juho-可能是。我在美国,在我最近的例子中,这是约一半被邀请人参加的目的地婚礼,即婚礼在新娘的故乡举行。我想知道什么文化差异会影响投票率,但我怀疑您是对的。
JTP-向Monica道歉,2014年

4
这是一个很好的例子,它在理论上存在但在实践中似乎很不寻常(直到您寻找这种东西为止):给定任何数据集,它都会返回预定的数字(在这种情况下为80%)。它易于计算,非常便宜(可以将数据收集成本降低到零),并且方差为零。它是贝叶斯(对于原子先验)并且是可接纳的。关于它的偏见和一致性,仍然会有一些棘手的问题,这些问题可能难以解决,而且避免避免“详细分析”也不会消失。
whuber

2

作为刚刚结婚的统计学家,我将告诉您JoeTaxpayer的答案正确。80%的数字让我感到有点高,尽管如果大多数人是本地人,这可能是准确的(我们是目的地婚礼,而我们的降落率接近65%)。

但是,尽管如此,您假设人们参加的先验概率有很大的可变性,但我认为这确实存在。假设您不邀请积极不喜欢您的人,您应该假设几乎每个人都会为他们力所能及,并且他们之间没有冲突(广义上),但至少10%至20%将有一些东西可以阻止他们参加。对于那些必须旅行的人来说,这增加了所需的时间和金钱,因此,有30-35%的旅行者不会参加(取决于距离)。否则,请保持概率不变(即使您的父母说“哦,某某某地不会一直飞到奥斯丁,我们只想邀请他们……”)。如果您有一个有趣的招待会,尤其是在开放式酒吧中,那么除非有必要,否则人们通常不会跳过。

无论如何,恭喜你结婚。现在,关于您结婚的可能性,这始终是一个很好的阅读:http : //users.nber.org/~bstevens/papers/Marital_Stability.pdf

:-)


1

将所有概率加在一起,这就是您预期要到达的人数。

您有i = 1..N个事件,每个事件都有概率。预期的人数为,其中如果有人出现,指示符变量等于1,否则为零。i 1 i P i 1 iPii1iPi1i

当然,我们假设某人是否来不取决于其他人的出席。这个假设是完全错误的。考虑夫妻,他们是高度相关的。

由于您没有相关性数据,因此您最好的办法是将夫妻作为一个单位处理,即,其中是夫妻将出现的概率。P 2×1iPiPi


1

对于我的婚礼,我列出了两个清单-可能参加(80%)和不太可能参加(20%)。无论出于任何原因进行任何更精细的评估,我都会将邀请的所有人分配给两个小组之一。我有2个人离开。N =1。纯启发式。


请问 最后的投票率是多少?
JTP-向Monica致歉,

72%的人回答是,但我忘记了多少天的取消。
michaelcarniol 2014年

0

我注意到没有人指出您不需要除以100。您的百分比可以看作是一个人预期出现的部分,但要理解,就像薛定ding的猫一样,您不会得到一个人的一部分出席或不出席,但每个人的出席状态将在事件发生时完全解决。

由于您的百分比范围是从0%(没有人出现)到100%(所有人都出现),因此在两个涉及10和20个人的示例中,您将每个部分的期望值相加人出现,并得到一个单位为“人”的数字。

QuantIbex出色答案中一个突出的方程式表明,对百分比求和可以得出事件的预期人数,而无需进行除法运算。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.