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

使用Pandas dropna函数无法删除空值,寻求解决方案

问题原因

你用的dropna(how='all')只会删除整行所有字段都是空值的行,但从你的空值统计结果来看,Ind_ID和Test_date这两列完全没有空值——也就是说你的数据里根本不存在整行全空的记录,所以这个操作自然不会有任何效果。

解决方案

根据你的实际需求,选择对应的处理方式:

  • 要是想删除只要有任意一个空值的行,把how参数改成'any'(其实默认就是这个,不写也行):
    df.dropna(how='any', inplace=True)
    # 或者直接写 df.dropna(inplace=True)
    df1 = df.copy()
    print(df1.isnull().sum())
    
    注意:这么做会删掉大量行,因为你数据里很多列都有不少空值。
  • 要是只想删除特定列有空值的行,用subset指定目标列,比如只删Cough_symptoms或Fever有空值的行:
    df.dropna(subset=['Cough_symptoms', 'Fever'], inplace=True)
    df1 = df.copy()
    print(df1.isnull().sum())
    
  • 要是只是想确认哪些行存在空值,可以先筛选出来查看:
    # 筛选出至少有一个空值的行
    rows_with_null = df[df.isnull().any(axis=1)]
    print(rows_with_null)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 06:15:38