如果一个值是NaN

时间:2016-05-02 15:09:38

标签: python pandas

我想用NaN去掉一些记录。这非常有效:

df.dropna(axis=0, how='any',inplace=True)

但是,它会更改数据框的形状,并且索引不再均匀分布。因此,我想用np.nan替换这些行中的所有项目。有一个简单的方法吗?

我在考虑在dropna之后重新采样数据帧,但这似乎只能使用规定的时间间隔,而我宁愿使用原始索引。另一种方法是使用iterrows循环数据框,但这也感觉很麻烦。

2 个答案:

答案 0 :(得分:4)

下面的命令选择任何值等于Nan的行,并将NaN分配给其余行。

df.loc[df.isnull().any(axis=1), :] = np.nan

答案 1 :(得分:1)

使用此代码也无需切片df = df.replace('nan',np.nan)