如果Pandas数据框中的特定列中存在空值,则删除行

时间:2018-03-15 04:43:03

标签: python pandas dataframe

enter image description here

对python pandas来说是新手。需要一些帮助来删除有空值的几行。在屏幕截图中,我需要使用python pandas删除charge_per_line =的行。谢谢!!

2 个答案:

答案 0 :(得分:10)

如果您在阅读大熊猫时,Charge_Per_Line中的相关条目为空(NaN),则可以使用df.dropna

df = df.dropna(axis=0, subset=['Charge_Per_Line'])

如果值真的是-,那么您可以将其替换为np.nan,然后使用df.dropna

import numpy as np

df['Charge_Per_Line'] = df['Charge_Per_Line'].replace('-', np.nan)
df = df.dropna(axis=0, subset=['Charge_Per_Line'])

答案 1 :(得分:3)

多种方式

  1. 使用str.contains查找包含' - '

    的行
    df[~df['Charge_Per_Line'].str.contains('-')]
    
  2. 用nan替换' - '并使用dropna()

    df.replace('-', np.nan, inplace = True)
    df = df.dropna()