Проверка данных в pandas: импорт, индексы, merge и итоги

В отчёте сошлись столбцы, но не деньги: после merge выросла выручка, пропущенная дата попала не в тот месяц, а присвоенные значения оказались у другого клиента. Начните с одной строки, для которой знаете правильный результат. Затем проверьте, на каком шаге меняются ключ, тип или число строк. Эта подборка связывает разборы рабочих ошибок с уроками и задачами pandas.

Сохранить смысл данных при импорте

У идентификатора и числа могут быть одинаковые символы, но разные правила. До расчётов определите типы, формат даты и допустимые пропуски. Сохраните несколько неверных строк отдельно: это поможет отличить ошибку источника от ошибки преобразования.

Прочитать CSV с явными типами и датами.

Попасть в нужные строки

Позиция строки меняется после сортировки и фильтрации. Для присваивания по бизнес-ключу проверьте, какое соответствие вы задали явно, а какое pandas достроил по индексу. Маленький пример с переставленными строками обнаруживает ошибку быстрее большого отчёта.

Разобрать loc, iloc и присваивание по индексу.

Объединить таблицы без лишней выручки

До объединения выясните, уникален ли ключ с каждой стороны. После него сравните число строк, сумму и несовпавшие ключи. Рост строк может быть ожидаемым, но тогда нужно заново определить, что считается единицей итогового отчёта.

Соединение таблиц с контролем кардинальности.

Проверить группировки и итог

Сравните общий итог до группировки и после неё. У пустого ключа, неизвестной суммы и нулевой продажи разный смысл. В отчётах по времени отдельно проверьте часовой пояс и границы периода.

Собрать сводные показатели через groupby и agg.

Продолжить обучение

Для самостоятельной проверки откройте задачи на очистку данных pandas. Если хочется пройти всю цепочку от массива до объединения таблиц, есть бесплатный тренажёр NumPy и pandas. Выберите задачу, отправьте своё решение и проверьте, сохраняется ли результат при другом порядке строк и пропущенных значениях.

Продолжить на практике

  • NumPy и pandas: практический тренажёр ↗

    Бесплатный тренажёр NumPy и pandas для тех, кто знает основы Python. Научитесь очищать таблицы, объединять данные и собирать отчёты: 31 урок и 124 задачи с кодом и автоматической проверкой.