Добавить в корзинуПозвонить
Найти в Дзене
Властелин машин

Ловушка новичка при преобразовании типов в Pandas

Рассмотрим самый распространенный способ преобразования типа колонки датафрейма, результат работы которого оборачивается непредсказуемыми сюрпризами для новичка. В этом материале я это и продемонстрирую. Пусть для примера мы работаем с таблицей: Попробуем преобразовать вторую колонку к булеву типу с помощью метода astype и посмотрим, что произойдет: Видите, что незаполненные значения автоматически преобразованы в True и False, при этом np.nan в True, None в False. Не каждый ожидает такого поведения. Ещё один сюрприз - преобразование первой колонки к строчному виду опять же методом astype: Теперь попробуем получить незаполненные значения в этой колонке и убедимся, что их нет: А вот, как найти старые пропущенные значения (только как строки): Примечательно, что np.nan отображается как строка NaN, а ищется как 'nan'.

Рассмотрим самый распространенный способ преобразования типа колонки датафрейма, результат работы которого оборачивается непредсказуемыми сюрпризами для новичка. В этом материале я это и продемонстрирую.

Пусть для примера мы работаем с таблицей:

Попробуем преобразовать вторую колонку к булеву типу с помощью метода astype и посмотрим, что произойдет:

-2

Видите, что незаполненные значения автоматически преобразованы в True и False, при этом np.nan в True, None в False. Не каждый ожидает такого поведения.

Ещё один сюрприз - преобразование первой колонки к строчному виду опять же методом astype:

-3

Теперь попробуем получить незаполненные значения в этой колонке и убедимся, что их нет:

-4

А вот, как найти старые пропущенные значения (только как строки):

-5

Примечательно, что np.nan отображается как строка NaN, а ищется как 'nan'.

-6