Выбор ответа Junior Пропуски, дубли и типы спрашивают часто обновлено

Числа из грязной колонки

Вопрос

В колонке price строки вида "120", "н/д", "99.5". Как получить числа, а мусор превратить в пропуски?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: pd.tonumeric(df.price, errors="coerce"). errors="coerce" превращает всё, что не парсится, в NaN, и колонка становится числовой. astype(float) упадёт на "н/д".

Варианты ответа

  1. df.price.replace("н/д", 0).astype(int)
  2. df.price.astype(float)
  3. pd.to_numeric(df.price, errors="ignore")
  4. pd.to_numeric(df.price, errors="coerce")правильный ответ

Разбор

errors="coerce" превращает всё, что не парсится, в NaN, и колонка становится числовой. astype(float) упадёт на "н/д". Вариант errors="ignore" устарел и возвращал вход без изменений. Замена на 0 искажает статистику (ноль это значение, а не «нет данных»), а astype(int) ещё и упадёт на "99.5".

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.