You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何DataFrame.sum(axis=0)赋值新列时全为NaN?各列均为实数

问题原因及解决办法
  • 核心问题是你用反了求和的axis参数:
    • dfc[measure_cols].sum(axis=0)是按列求和,输出的是一个以列名为索引的Series,长度等于你选的measure_cols的列数;
    • 而你的dfc是按行存储的DataFrame,把这个列求和的结果赋值给新列时,因为两者的索引(列名 vs 行索引)完全不匹配,所以所有行都会被填充成NaN。
  • 要实现每行的列值求和,应该用axis=1按行求和,这样得到的结果长度和dfc的行数一致,索引完全匹配,赋值后就能得到正确的每行求和结果:
dfc['shap_sum'] = dfc[measure_cols].sum(axis=1)

内容的提问来源于stack exchange,提问作者WestCoastProjects

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 16:25:14