Ловушки при чтении данных
Вопрос
Какие проблемы вы проверяете сразу после чтения файла в pandas?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
`shape`, `head`, `dtypes`: правильно ли разобраны колонки
Числа и даты не стали строками: `sep`, `decimal`, `parse_dates`
ID с ведущими нулями прочитаны строкой
Пропуски: `isna().sum()`, не съел ли парсер реальные значения вроде `NA`
Кодировка: нет ли кракозябр
Дубликаты и неожиданные значения
Что могут спросить следом
- Почему целые стали float?
- Что делать, если в колонке смешаны форматы дат?
Разбор
Сразу смотрю shape, head() и dtypes. Если всё легло в одну колонку, неверный sep. Если числа стали строками (object или str), скорее всего запятая в дробях, нужен decimal=",", или мусорные значения в колонке. Даты разбираю parse_dates или to_datetime с явным форматом. ID, индексы, ИНН читаю строкой, иначе пропадут ведущие нули. Считаю пропуски по колонкам и проверяю, не превратились ли в NaN реальные значения вроде кода страны NA. Если в тексте кракозябры, пробую cp1251. И смотрю на дубликаты и аномалии: отрицательные суммы, даты из будущего.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «Чтение и запись данных»
- Как прочитать большой файл в pandas
- Файл больше памяти в pandas
- Агрегат по кускам через chunksize
- Вложенный JSON заказов в таблицу
- Разбор выгрузки из Excel: sep, decimal, dtype
- Запятая в дробях при чтении CSV
- CSV для русского Excel
- read_csv для русской выгрузки