具有 nan 值的复杂选择



我在使用 loc 选择具有 NaN 值的帧时遇到问题。这是我使用的功能。

def replace_nan(df, di):
    df.fillna(-1, inplace=True)
    for key, value in di.items():
        df.loc[   (df["meter_id"]==key) & (df["Values"]== np.nan),  "Values"]=value
return df 

我已经检查了 NaN 值是否为 np.nan 值,在这种情况下,我需要替换"值"列中的所有 NaN 值,并牢记其他列meter_id中的某些类别。

我想知道如何在不替换 nan 的情况下处理这个问题,因为我的解决方案是用 -1 替换 nan,同时更改条件 df["值"]== -1,并且函数可以毫无问题地工作。

你可以通过以下方式获取nan值:

     df = df.loc[df['Values'].isnull()]

这将获取"值"为 nan 的所有行

最新更新