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

如何在Python中删除Dataframe里仅首单元格有值的特定行

Python删除DataFrame仅首列有值其余全空行的实现方法

核心思路是按行校验列值特征,筛选掉符合「首列非空、其余列全为空」特征的行即可。

前置依赖

确保已经安装pandas库,导入方式如下:
import pandas as pd

核心实现代码

场景1:仅需判定NaN/PD.NA类空值

# mask为符合待删除特征的行的布尔掩码
mask = (df.iloc[:, 1:].isna().all(axis=1)) & (df.iloc[:, 0].notna())
# 取反后保留正常行,得到清理后的DataFrame
df_clean = df[~mask]

场景2:需同时将空字符串判定为空值

# 先把空字符串替换为NA再做判断,覆盖空文本场景
mask = (df.iloc[:, 1:].replace('', pd.NA).isna().all(axis=1)) & (df.iloc[:, 0].replace('', pd.NA).notna())
df_clean = df[~mask]

关键逻辑说明

  • df.iloc[:, 1:] 选中除第一列外的所有列,适配任意列数的DataFrame
  • isna().all(axis=1) 按行遍历,判断该行所有选中列是否全为空
  • ~ 为取反运算符,过滤掉所有符合待删除特征的行
    如果需要直接修改原DataFrame,直接将清理后的结果赋值给原变量即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 12:27:03