过滤掉缺少数据的行(NaN 无 NaT)

如果你有一个缺少数据的数据框(NaNpd.NaTNone),你可以过滤掉不完整的行

df = pd.DataFrame([[0,1,2,3],
                  [None,5,None,pd.NaT],
                  [8,None,10,None],
                  [11,12,13,pd.NaT]],columns=list('ABCD'))
df
# Output:    
#     A   B   C     D
# 0   0   1   2     3
# 1 NaN   5 NaN   NaT
# 2   8 NaN  10  None
# 3  11  12  13   NaT

DataFrame.dropna 删除包含至少一个缺少数据的字段的所有行

df.dropna()
# Output:
#    A  B  C  D
# 0  0  1  2  3

要删除指定列中缺少数据的行,请使用 subset

df.dropna(subset=['C'])
# Output:
#     A   B   C     D
# 0   0   1   2     3
# 2   8 NaN  10  None
# 3  11  12  13   NaT

使用选项 inplace = True 进行就地替换过滤帧。