有一种情况,我得到了总票数和累计售票数据如下:
Total Tickets Available: 300
Day 1: 15 tickets sold to date
Day 2: 20 tickets sold to date
Day 3: 25 tickets sold to date
Day 4: 30 tickets sold to date
Day 5: 46 tickets sold to date
售出的门票数量是非线性的,我问如果有人计划在第 23 天买票,他能买到票的概率是多少?
我一直在寻找大量用于曲线拟合的库,如 numpy、PyLab 和 sage,但我有点不知所措,因为统计数据不在我的背景中。给定这组数据,我如何轻松计算概率?如果有帮助,我也有其他地方的售票数据,曲线应该会有些不同。
最佳答案
这个问题的最佳答案将需要有关该问题的更多信息——随着日期的临近(以及收割更多),人们购买机票的可能性会增加/减少吗?是否存在会暂时影响销售率的广告事件?等等。
不过,我们无法访问该信息,所以我们假设,作为初步近似值,门票销售率是恒定的。由于销售基本上是随机发生的,因此最好将它们建模为 Poisson process 请注意,这并没有说明许多人会购买不止一张票的事实,但我认为这不会对结果产生太大影响;也许真正的统计学家可以在这里插话。另外:我将在这里讨论恒定速率泊松过程,但请注意,由于您提到速率肯定不是恒定的,因此下一步您可以研究可变速率泊松过程。
要对泊松过程建模,您只需要门票销售的平均 率。在您的示例数据中,每天的销售额为 [15、5、5、5、16],因此平均比率约为每天 9.2 张票。我们已经售出 46 张票,所以还剩 254 张。
从这里开始,很容易问“给定 9.2 tpd 的速率,在 23 天内售出少于 254 张门票的概率是多少?” (忽略您不能卖出超过 300 张票的事实)。计算方法是使用累积分布函数(请参阅 here 了解泊松分布的 CDF)。
平均而言,我们预计 23 天后将售出 23 * 9.2 = 211.6 张门票,因此在概率分布的语言中,预期值 为 211.6。 CDF 告诉我们,“给定一个期望值 λ,看到一个值 <= x 的概率是多少”。您可以自己计算或让 scipy 为您计算:
>>> import scipy.stats
>>> scipy.stats.poisson(9.2 * 23).cdf(254-1)
0.99747286634158705
所以这告诉我们:IF门票销售可以准确地表示为泊松过程并且IF平均门票销售率确实是 9.2 tpd,那么概率至少有一张票在 23 天后可用是 99.7%。
现在假设某人想带一群 50 位 friend ,并且想知道如果他们在 25 天内购买所有 50 张门票的概率(将问题重新表述为“如果我们预计平均售出 9.2 * 25 张门票, 卖出 <= (254-50) 张门票的概率是多少?":
>>> scipy.stats.poisson(9.2 * 25).cdf(254-50)
0.044301801145630537
因此 25 天后有 50 张票可用的概率约为 4%。
关于Python:计算一个点符合曲线的概率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11481279/