← 返回题库
初级

流动资产与非流动资产结构分析

未完成 100%
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve():
    import pandas as pd
    from pyodide.http import open_url
    from io import StringIO
    
    BASE_URL = "https://data.zuihe.com/finance/"
    
    bs = pd.read_csv(StringIO(open_url(BASE_URL + "balance_sheet.csv").read()))
    info = pd.read_csv(StringIO(open_url(BASE_URL + "company_info.csv").read()))
    
    # 筛选2022年数据
    df_2022 = bs[bs['Accper'] == '2022-12-31'].copy()
    
    # 合并公司信息
    merged = df_2022.merge(info[['stkcd', 'name_tushare', 'ind_code_csmar']], 
                          left_on='Stkcd', right_on='stkcd', how='left')
    
    # 筛选制造业和金融业
    mfg = merged[merged['ind_code_csmar'].str.startswith('C', na=False)].head(5)
    fin = merged[merged['ind_code_csmar'].str.startswith('J', na=False)].head(5)
    
    # 计算流动资产比例
    mfg['流动资产比例'] = mfg['流动资产合计'] / mfg['总资产']
    fin['流动资产比例'] = fin['流动资产合计'] / fin['总资产']
    
    result = {
        '制造业样本数': len(mfg),
        '制造业平均流动资产比例': round(mfg['流动资产比例'].mean(), 4),
        '金融业样本数': len(fin),
        '金融业平均流动资产比例': round(fin['流动资产比例'].mean(), 4),
        '差异': round(mfg['流动资产比例'].mean() - fin['流动资产比例'].mean(), 4)
    }
    
    return result

示例

输入
solve()
期望输出
{'制造业样本数': 5, '制造业平均流动资产比例': np.float64(0.5127), '金融业样本数': 5, '金融业平均流动资产比例': np.float64(0.8196), '差异': np.float64(-0.3069)}
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码