Как я могу проверить, является ли значение nan или список?
В настоящее время я работаю с пантами данных. Итерируя по нему, я хочу проверить, является ли значение numpy.nan или списком.
for i, row in df.iterrows():
value = row["Name"]
if pd.isnull(value):
dosomething()
Это работает просто отлично, если только
type(value) == list
Тогда я подумал о том, чтобы положить any() вокруг:
for i, row in df.iterrows():
value = row["Name"]
if any(pd.isnull(value)):
dosomething()
Но теперь я получаю исключение каждый раз, когда NaN имеет значение, потому что он явно не повторяется.
Есть ли лучшее решение, чем проверка типа значения?
Заранее большое спасибо!
1 ответ
Решение
Использование or
:
for i, row in df.iterrows():
value = row["Name"]
if pd.isnull(value) or (type(value) == list):
dosomething()
Еще один способ проверки isinstance
:
for i, row in df.iterrows():
value = row["Name"]
if pd.isnull(value) or isinstance(value, list):
dosomething()