У вас есть несколько стратегий, связанных с nan
, давайте рассмотрим эту игрушку df
:
import pandas as pd
import numpy as np
df = pd.DataFrame(
{
'column': [np.nan, True, np.nan]
}
)
print(df['column'])
>>>
0 NaN
1 True
2 NaN
Name: column, dtype: object
Вы можете просто принудительно заставить тип столбца bool
, если вы можете позволить себе работать с поврежденными данными (не рекомендуется):
print(df['column'].astype(bool))
>>>
0 True
1 True
2 True
Name: column, dtype: bool
Вы можете удалить строки, содержащие nan
(лучший подход):
print(df['column'].dropna())
>>>
1 True
Name: column, dtype: object
Или вы можете заменить эти nan
значением по умолчанию значение:
print(df['column'].fillna(False))
>>>
0 False
1 True
2 False
Name: column, dtype: bool