dropna - ¿Cómo comparar pandas DataFrame con None en Python?
pandas drop rows with nan in one column (1)
El uso is not :
if self.pandas_df is not None:
print ''Do stuff''
PEP 8 dice:
Las comparaciones con singletons como
Nonedeben hacerse siempre con ois not, nunca con los operadores de igualdad.
También hay una buena explanation por qué.
¿Cómo comparo un marco de datos de pandas con None ? Tengo un constructor que toma uno de un pandas_df parameter_file o un pandas_df pero nunca ambos.
def __init__(self,copasi_file,row_to_insert=0,parameter_file=None,pandas_df=None):
self.copasi_file=copasi_file
self.parameter_file=parameter_file
self.pandas_df=pandas_df
Sin embargo, cuando más tarde intento comparar pandas_df con None (es decir, cuando self.pandas_df realmente contiene un marco de datos de pandas):
if self.pandas_df!=None:
print ''Do stuff''
Me sale el siguiente TypeError:
File "C:/Anaconda1/lib/site-packages/pandas/core/internals.py", line 885, in eval
% repr(other))
TypeError: Could not compare [None] with block values