Сложность работы с отсутствующими значениями при определенных знаниях оборачивается преимуществом, и в этой статье я расскажу, как с ними подружиться. Не будем касаться темы их замены или фильтрации, о которых я рассказывал раннее (например, в этом материале). При этом замечу, что делать это стоит в крайнем случае и не на этапе промежуточной обработки признаков, так как иначе по прошествии времени сложно будет определить, что использовалось для замены (я уже не говорю о проблемах в случае попыток понять ваш код другими разработчиками). В этой статье коснемся выборки данных путем индексирования по булевым значениям с использованием столбца, содержащего отсутствующие значения. Рассмотрим простой DataFrame: a = pd.DataFrame({'values':['one', np.nan, None,'four']}) Если попытаться вывести строки, содержащие 'one', получим ошибку: a[a['values'].str.contains('one')] Причиной этого является тот факт, что индексный столбец a['values'].str.contains('one') содержит не только булевы значения (отв