Python pandas check if dataframe is not empty

I have an if statement where it checks if the data frame is not empty. The way I do it is the following:

if dataframe.empty:
    pass
else:
    #do something

But really I need:

if dataframe is not empty:
    #do something

My question is - is there a method .not_empty() to achieve this? I also wanted to ask if the second version is better in terms of performance? Otherwise maybe it makes sense for me to leave it as it is i.e. the first version?


Solution 1:

Just do

if not dataframe.empty:
     # insert code here

The reason this works is because dataframe.empty returns True if dataframe is empty. To invert this, we can use the negation operator not, which flips True to False and vice-versa.

Solution 2:

.empty returns a boolean value

>>> df_empty.empty
True

So if not empty can be written as

if not df.empty:
    #Your code

Check pandas.DataFrame.empty , might help someone.

Solution 3:

You can use the attribute dataframe.empty to check whether it's empty or not:

if not dataframe.empty:
    #do something

Or

if len(dataframe) != 0:
   #do something

Or

if len(dataframe.index) != 0:
   #do something