初级
古典概率Titanic生还
未完成 100%
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.patches as patches
url = 'https://data.zuihe.com/titanic.csv'
df = pd.read_csv(url)
n = len(df)
p_s = round(df['survived'].mean(), 4)
p_f = round((df['sex']=='female').mean(), 4)
p_sf = round(((df['survived']==1)&(df['sex']=='female')).sum()/n, 4)
print(f'P(生还)={p_s}, P(女性)={p_f}')
print(f'P(生还∩女性)={p_sf}')
print(f'P(生还|女性)={round(p_sf/p_f,4)}')
# 绘制概率条形图
labels = ['生还','女性','生还∩女性']
values = [p_s, p_f, p_sf]
plt.bar(labels, values, color=['steelblue','orange','green'], edgecolor='black')
plt.ylabel('概率'); plt.title('Titanic概率分布'); plt.tight_layout(); plt.show()
示例
输入
solve()
期望输出
P(生还)=0.3838, P(女性)=0.3524 P(生还∩女性)=0.2615 P(生还|女性)=0.7421
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199