感谢Dr.fish的耐心讲解和细致回答。
本次课的随堂作业如下:
机票超卖现象:
假设某国际航班有300个座位,乘客平均误机率是2%
- 如果一共卖出305张机票,那么登机时人数超额的概率是多少?
- 如果一共卖出305张机票,登机时最多只超额1人的概率是多少?
- 一共卖出几张机票,可以保证不超额的概率至少是90%?
# 导入分析包
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import scipy.stats
from __future__ import division # 支持精确除法
%config InlineBackend.figure_format = 'retina'
Q1. 如果一共卖出305张机票,那么登机时人数超额的概率是多少?
# 绘制概率图
n = 305
p = 1 - 0.02
binom = scipy.stats.binom(n,p)
x = np.arange(290,306)
y = binom.pmf(x)
plt.plot(x, y, 'bo')
plt.vlines(x, 0, y, colors='b')
plt.ylim(0,0.2)
# 条件添加颜色
for a in np.arange(301,306,1):
plt.vlines(a, 0, binom.pmf(a),'r')
plt.plot(a,binom.pmf(a),'ro')
plt.show()
概率图
# 计算超额概率
binom.sf( 300 )
# 输出结果
0.26915013819815131
# 检验方法:事件总概率 - 不超额概率
1 - binom.cdf(300)
# 输出结果
0.26915013819815131
Q2. 如果一共卖出305张机票,登机时最多只超额1人的概率是多少?
# 计算登机人数为301人的概率
binom.pmf(301)
# 输出结果
0.12929463926438506
Q3. 一共卖出几张机票,可以保证不超额的概率至少是90%?
# 计算票数
binom.ppf(0.9)
# 输出结果
302.0
# 检验方法
binom.isf(1 - 0.9)
# 输出结果
302.0
网友评论