0

I am trying to check if item of list is not dataframe. My code is as below and this shows an error

list = [None, df1, df2, df3]

for n in list:
  if n != None:
    print(n)

ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

is there any good solution?

Pranav Hosangadi
  • 23,755
  • 7
  • 44
  • 70
marsss
  • 51
  • 1
  • 5

2 Answers2

1
import pandas as pd

list = [None, df1, df2, df3]

for n in list:
  if type(n) is not pd.DataFrame:
    print(n)
Muhteva
  • 2,729
  • 2
  • 9
  • 21
0

something like this

import pandas as pd
from pandas import DataFrame

df1 = pd.DataFrame()

lst = [5, df1, 'jack']
for entry in lst:
    if not isinstance(entry, DataFrame):
        print(f'{entry} is not a df')

output

5 is not a df
jack is not a df
balderman
  • 22,927
  • 7
  • 34
  • 52