过滤掉缺少数据的行(NaN 无 NaT)
如果你有一个缺少数据的数据框(NaN
,pd.NaT
,None
),你可以过滤掉不完整的行
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
进行就地替换过滤帧。