Обязательные проверки перед анализом данных с Pandas
Некоторые этапы предварительной обработки данных необходимо выполнять в любом проекте, о них и пойдет речь в этой статье. В качестве демонстрационного примера будем использовать следующий датафрейм:
import pandas as pd df = pd.DataFrame([['Пугачев', 'Иван', 12], ['Емельянов', 'Павел', 30], ['Коломойский', 'Андрей'], ['Авдеева', 'Нонна', 40], ['Пугачев', 'Иван', 12], ['Кравченко', 'Петр', 32]], columns=['Фамилия', 'Имя', 'Доход']) df
Проверка незаполненных значений
Воспользуемся комбинацией методов isna и sum. isna для каждой ячейки датафрейма вернет логическое значение, правда - если она не заполнена и ложь в противоположном случае:
df.isna()
а sum преобразует True в 1, False в 0 и суммирует по столбцам:
df.isna().sum()
Проверка дубликатов
Вызываем метод duplicated, получаем логические значения (однако уже на уровне целой строки) и сразу подсчитываем как в примере выше методом sum:
df.duplicated().sum()
Идентификация выбросов
Выбивающиеся из логики значения (слишком большие и малые) для числовых столбцов можно попытаться найти методом describe:
df.describe()
Также для решения этой задачи пригодится визуализация распределений (подробнее писал ранее).
Еще много интересного
Общая информация о таблице (в том числе, количество заполненных значений по столбцам) возвращается методом info:
df.info()