Найти тему
SoftSAR

Очистка данных при помощи Pandas

Очистка данных это процесс обнаружения и исправления (или удаления) поврежденных или неточных записей из набора записей, таблицы или базы данных. Процесс включает в себя выявление неполных, неправильных, неточных или несущественных данных, а затем замену, изменение или удаление «загрязненных» данных.

Данные являются одним из самых важных ресурсов компании. Качество данных, которыми оперирует компания, может привести к ее взлету или падению. Полученные первичные сырые данные не представляют для компании большой ценности. В них содержится полезная информация, но увидеть ее без предварительной обработки данных невозможно. Для придания данным ценности их необходимо обработать, удалить ненужные данные и повторы, данные в которых содержатся ошибки, добавить необходимые данные, например добавить столбец со средним (минимальным/максимальным) значением и др.

Для обработки данных мы воспользуемся Python и библиотеку Pandas.

Документация доступна по ссылке.

Чтобы обработать данные, их нужно загрузить. Читаем данные csv с использованием запятой в качестве разделителя и с пользовательскими заголовками.

Удаление дублирующихся данных является важным этапом при обработке очистке данных.

Часто нам требуется удалить эмодзи в текстовых данных. Этом можно реализовать всего одной строчкой кода. В коде ниже мы переводим все данные в значения ASCII, а те, которые не могут быть переведены, игнорируем. После перевода в значения ASCII наш код переводит данные обратно. Так мы получаем все наши данные без эмодзи.

В данных часто присутствуют лишние пробелы, знаки табуляции и переходы на новую строку. Первые две строки кода ниже заменяют табы и символы перевода строки на пустые строки. Третья строка ищет два и более пробелов при помощи регулярного выражения, а затем заменяет их на один пробел. Наконец, последняя строка обрезает данные с обоих концов, удаляя пробелы.

Удаление URL-адресов. Порой в данных встречаются URL адреса. Регулярное выражение, приведенное ниже, удаляет их.

После выполнения предыдущих шагов по очистке в столбцах остаются пустые данные. От этих пустых строк нужно избавиться.

Первая строка кода удаляет все строки, содержащие np.nan, pd.NaT и None. Остальные удаляют строки, содержащие символы пустой строки. Второй метод быстрый, но если в столбце будет хотя бы пробел, он не сработает. Это еще одна причина обрезать лишние пробелы заранее.

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

С уважением, Карян Армен.
Занимаюсь профессиональной разработкой прикладных программ на Python.
email SoftSAR@yandex.ru
Telegram @SoftSar_am