初级
生成账户集中度报告(前10大账户)
未完成
初级参考
完整示例代码供参考,建议自己理解后重新输入
def solve():
from pyodide.http import open_url
offices_csv = open_url("https://data.zuihe.com/dbd/core/state_08/offices.csv").read()
staff_csv = open_url("https://data.zuihe.com/dbd/core/state_08/staff.csv").read()
savings_products_csv = open_url("https://data.zuihe.com/dbd/core/state_08/savings_products.csv").read()
clients_csv = open_url("https://data.zuihe.com/dbd/core/state_08/clients.csv").read()
savings_accounts_csv = open_url("https://data.zuihe.com/dbd/core/state_08/savings_accounts.csv").read()
savings_account_transactions_csv = open_url("https://data.zuihe.com/dbd/core/state_08/savings_account_transactions.csv").read()
gl_accounts_csv = open_url("https://data.zuihe.com/dbd/core/state_08/gl_accounts.csv").read()
journal_entries_csv = open_url("https://data.zuihe.com/dbd/core/state_08/journal_entries.csv").read()
charges_csv = open_url("https://data.zuihe.com/dbd/core/state_08/charges.csv").read()
clearing_records_csv = open_url("https://data.zuihe.com/dbd/core/state_08/clearing_records.csv").read()
import sqlite3, pandas as pd
from io import StringIO
conn = sqlite3.connect(':memory:')
pd.read_csv(StringIO(clients_csv)).to_sql('clients', conn, index=False, if_exists='replace')
pd.read_csv(StringIO(savings_accounts_csv)).to_sql('savings_accounts', conn, index=False, if_exists='replace')
total = conn.execute('SELECT SUM(balance) FROM savings_accounts').fetchone()[0]
df = pd.read_sql_query("""
SELECT c.name AS client_name, a.account_no, a.balance
FROM savings_accounts a JOIN clients c ON a.client_id=c.id
ORDER BY a.balance DESC LIMIT 10
""", conn)
df['pct'] = (df['balance']/total*100).round(1).astype(str)+'%'
print(df.to_string(index=False))
top10 = df['balance'].sum()
print(f"Top10合计: {round(top10,2)}, 占比: {round(top10/total*100,1)}%")
conn.close()
示例
输入
solve()
期望输出
client_name account_no balance pct
深圳阳光科技有限公司 6299001000000021 1250000.0 23.7%
深圳华晟电子有限公司 6299001000000025 875000.0 16.6%
上海恒通实业有限公司 6299003000000023 620000.0 11.8%
张三丰 6212002000000015 500000.0 9.5%
深圳阳光科技有限公司 6216001000000032 500000.0 9.5%
北京鑫盛贸易有限公司 6299002000000022 380000.0 7.2%
张三丰 6213003000000031 200000.0 3.8%
广州南方物流有限公司 6299004000000024 195000.0 3.7%
郑艳 6213003000000030 100000.0 1.9%
北京鑫盛贸易有限公司 6213002000000035 100000.0 1.9%
Top10合计: 4720000.0, 占比: 89.6%
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199