Выбор ответа Senior Выборка и фильтрация обновлено
Отрицание условия и NaN
Вопрос
В колонке x значения [1, 6, NaN, 8, 3]. Сколько строк в df[~(df.x > 5)] и в df[df.x <= 5]?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: 3 и 2. Любое сравнение с NaN даёт False. df.x 5 для NaN это False, после становится True, и строка с пропуском попадает в выборку: 1, NaN, 3, итого 3.
Варианты ответа
- 2 и 2
- 3 и 3
- 2 и 3
- 3 и 2правильный ответ
Разбор
Любое сравнение с NaN даёт False. df.x > 5 для NaN это False, после ~ становится True, и строка с пропуском попадает в выборку: 1, NaN, 3, итого 3. А df.x <= 5 для NaN тоже False, остаются только 1 и 3. Вывод: «не больше 5» и «меньше или равно 5» не одно и то же при пропусках, явно решайте судьбу NaN через isna().
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Правая граница среза в loc и iloc
Следующий вопрос
loc и iloc на перевёрнутом индексе