初级
查询续存率(auto_renew=1的定期账户占比)
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
from pyodide.http import open_url
offices_csv = open_url("https://data.zuihe.com/dbd/core/state_04/offices.csv").read()
staff_csv = open_url("https://data.zuihe.com/dbd/core/state_04/staff.csv").read()
savings_products_csv = open_url("https://data.zuihe.com/dbd/core/state_04/savings_products.csv").read()
clients_csv = open_url("https://data.zuihe.com/dbd/core/state_04/clients.csv").read()
savings_accounts_csv = open_url("https://data.zuihe.com/dbd/core/state_04/savings_accounts.csv").read()
savings_account_transactions_csv = open_url("https://data.zuihe.com/dbd/core/state_04/savings_account_transactions.csv").read()
gl_accounts_csv = open_url("https://data.zuihe.com/dbd/core/state_04/gl_accounts.csv").read()
journal_entries_csv = open_url("https://data.zuihe.com/dbd/core/state_04/journal_entries.csv").read()
import sqlite3, pandas as pd
from io import StringIO
conn = sqlite3.connect(':memory:')
pd.read_csv(StringIO(savings_products_csv)).to_sql('savings_products', conn, index=False, if_exists='replace')
pd.read_csv(StringIO(savings_accounts_csv)).to_sql('savings_accounts', conn, index=False, if_exists='replace')
row = conn.execute("""
SELECT COUNT(*), SUM(CASE WHEN a.auto_renew=1 THEN 1 ELSE 0 END)
FROM savings_accounts a JOIN savings_products sp ON a.product_id=sp.id
WHERE sp.product_type IN ('FIXED_TERM','CERTIFICATE')
""").fetchone()
rate = round(row[1]/row[0]*100,1) if row[0] else 0
print(f"total_fixed: {row[0]}")
print(f"auto_renew_count: {row[1]}")
print(f"renewal_rate: {rate}%")
conn.close()
示例
输入
solve()
期望输出
total_fixed: 10 auto_renew_count: 5 renewal_rate: 50.0%
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199