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

如何检测Pandas DataFrame全NaN行并将其替换为0?

解决方法

你已经通过df_june.isna().all(axis=1)拿到了全NaN行的布尔掩码,接下来直接用这个掩码定位目标行并赋值0即可,完全不需要按列操作:

# 获取全NaN行的布尔索引
all_nan_rows = df_june.isna().all(axis=1)

# 将这些行的所有值替换为0
df_june.loc[all_nan_rows, :] = 0

补充说明

  • 该操作仅修改完全由NaN组成的行,包含部分NaN的行不会被改动,精准匹配你的需求。
  • 针对2000行8000列的大DataFrame,这个方法效率很高——布尔索引和.loc赋值都是Pandas矢量化操作,远快于循环遍历。
  • 若想先确认全NaN行的具体内容,可先执行:
    print(df_june[all_nan_rows])
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 01:50:50