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

Python DataFrame空单元格赋值失败:替换最后一行空值为列最大值代码无效

问题产生原因

你使用的example.iloc[-1]['A']属于链式索引操作:pandas会先执行iloc[-1]返回最后一行的副本,再对这个副本执行['A']取值后赋值,所有修改只会作用在临时副本上,不会同步到原始的example DataFrame。如果开启了警告提示,运行这段代码通常会触发SettingWithCopyWarning提示。

正确实现方式

仅填充A列最后一行空值

不要拆分两次索引操作,使用单个索引器同时指定行和列的位置即可:

  1. 使用iloc按位置定位(A列是第0列)
example.iloc[-1, 0] = example['A'].max()
  1. 使用loc按索引标签定位
example.loc[example.index[-1], 'A'] = example['A'].max()

批量填充最后一行所有数值列的空值为对应列最大值

如果后续需要扩展到多列填充,可以直接用fillna批量处理:

# 先计算所有数值列的最大值
col_max = example.max(numeric_only=True)
# 对最后一行的空值做填充
example.iloc[-1] = example.iloc[-1].fillna(col_max)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 22:39:00