猿问

多次检查空数据框

我有一种情况,只有当数据帧不为空时,我才需要在代码中向前移动数据帧。如下图:


----- Filter 1 -------

Check if df.empty then return emptydf

else

----- Filter 2 ------

Check if df.empty then return emptydf

else

----- Filter 3 ------

return df

上面的代码写成如下(只是代码的一部分):


def filter_df(df):

    df = df[df.somecolumn > 2].copy()


    if df.empty:

        return df


    df = df[df.someother == 2].copy()


    if df.empty:

        return df


    df = df[df.all <= 10].copy()


    return df

如果我有很多这样的过滤器,它们希望数据帧不为空,我需要在每个过滤器之后检查为空。有没有更好的方法来检查数据框是否为空而不是在每个级别进行检查。


喵喔喔
浏览 123回答 2
2回答

德玛西亚99

您可以使用函数并在非常过滤后调用它def check_empty(df):&nbsp; &nbsp; if df.empty:&nbsp; &nbsp; &nbsp; &nbsp;return dfdf = df[df.somecolumn > 2].copy()check_empty(df)df = df[df.someother == 2].copy()check_empty(df)df = df[df.all <= 10].copy()return df&nbsp;
随时随地看视频慕课网APP

相关分类

Python
我要回答