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

如何删除Pandas DataFrame中含缺失值的行?

处理Pandas DataFrame中的缺失行

我正在处理一个Pandas DataFrame,其中部分行存在无值情况(如下方DataFrame的第21行)。示例仅展示了一行全无值的情况,但实际数据中有大量行存在至少一列无值的情况,我希望删除这类至少有一列无值的行。

df

    Thick   Max     Mean
19  0.7889  8172.58 2197.091
20  1.0603  9366.3  2781.3216
21  '-        '-       '- 
22  1.0577  9347.46 2774.4086
23  0.8125  8243.45 2241.2326
24  0.924   8461.7  2484.9097

解决方案

你的DataFrame里的缺失值用'-标记,并非Pandas默认识别的NaN,需要先转换为标准缺失值,再删除含缺失值的行:

  1. 替换自定义缺失值为标准缺失值
    用replace()方法把所有'-替换成pd.NA:

    import pandas as pd
    
    df = df.replace("'-", pd.NA)
    
  2. 删除含至少一个缺失值的行
    使用dropna()方法,默认参数how='any'会删除所有存在缺失值的行:

    df_cleaned = df.dropna()
    

也可以合并为一行代码完成操作:

df_cleaned = df.replace("'-", pd.NA).dropna()

执行后,所有含缺失值的行都会被移除,得到无缺失值的干净DataFrame。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 14:30:47