初级
泰坦尼克按性别舱位统计生存率
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
import sqlite3
import pandas as pd
conn = sqlite3.connect(':memory:')
df = pd.read_csv('https://liangdaima.com/static/data/titanic.csv')
df.to_sql('titanic', conn, index=False)
result = conn.execute('SELECT sex, pclass, COUNT(*) AS total, SUM(CASE WHEN survived = 1 THEN 1 ELSE 0 END) AS survived, ROUND(100.0 * SUM(CASE WHEN survived = 1 THEN 1 ELSE 0 END) / COUNT(*), 2) AS survival_rate FROM titanic GROUP BY sex, pclass').fetchall()
conn.close()
return result
示例
输入
print(solve())
期望输出
[('female', 1, 94, 91, 96.81), ('female', 2, 76, 70, 92.11), ('female', 3, 144, 72, 50.0), ('male', 1, 122, 45, 36.89), ('male', 2, 108, 17, 15.74), ('male', 3, 347, 47, 13.54)]
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199