Задачи на очистку данных в pandas: пропуски и дубли

Подборка посвящена очистке данных в pandas: пропускам, типам столбцов, текстовым ключам и дубликатам. Цель — получить таблицу, которую можно безопасно группировать и соединять с другими данными.

Сначала смысл, затем метод

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

Пример нормализации ключа

import pandas as pd
df = pd.DataFrame({"code": [" A ", "a", " B"], "qty": [2, 3, 4]})
df["key"] = df["code"].str.strip().str.lower()
print(df["key"].tolist())
print(df.duplicated("key", keep=False).tolist())

Результат:

['a', 'a', 'b']
[True, True, False]

После нормализации первые две строки имеют один ключ. Это повод проверить их, а не автоматически удалить одну: у них отличаются количества. Решение зависит от того, повторная ли это запись или два разных события.

Что отработать

Перед объединением проверьте ключи, затем переходите к задачам groupby и merge. Другие темы — в общей практике pandas. Обработка пропусков в документации pandas. Полный маршрут — бесплатный курс.