Рубрики
Без рубрики

Как очистить данные в Python?

Эй, товарищ ученик! Сегодня в этом уроке мы узнаем, как очистить данные в Python и почему это важно.

Автор оригинала: Pankaj Kumar.

Эй, товарищ ученик! Сегодня в этом уроке мы узнаем, как очистить данные в Python и почему это важно.

Что такое очистка данных?

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

Зачем нам нужно очищать данные в Python?

Если данные не будут очищены должным образом, это может привести к большим потерям, включая снижение эффективности маркетинга. Следовательно, очистка данных становится действительно важной, чтобы избежать всех неточностей в основных результатах.

Эффективная очистка данных подразумевает меньшее количество ошибок, которые приводят к более счастливым клиентам и меньшему количеству разочарованных сотрудников. Это также приводит к повышению производительности и улучшению решений.

Шаги по очистке данных в наборе данных Python

1. Загрузка данных

Теперь давайте выполним очистку данных в случайном файле csv , который я скачал из Интернета. Имя набора данных – “Разрешения на строительство в Сан-Франциско” . Перед любой обработкой данных они сначала загружаются в файл. Код для загрузки данных показан ниже:

import numpy as np
import pandas as pd
data = pd.read_csv('Building_Permits.csv',low_memory=False)

Сначала импортируются все необходимые модули, а затем загружается csv-файл. Я добавил дополнительный параметр с именем low_memory , цель которого-убедиться, что программа не столкнется с какими-либо ошибками в памяти из-за огромного набора данных.

Набор данных содержит 198900 сведений о разрешениях и 43 столбца. Столбцы в наборе данных следующие:

  1. Номер разрешения
  2. Тип разрешения
  3. Определение типа разрешения
  4. Дата создания Разрешения
  5. Блок
  6. Много
  7. Номер улицы
  8. Суффикс номера улицы
  9. Название улицы
  10. Суффикс улицы
  11. Единица измерения
  12. Суффикс единицы измерения
  13. Описание
  14. Текущее Состояние
  15. Дата Текущего Состояния
  16. Дата подачи
  17. Дата выпуска
  18. Дата завершения
  19. Дата Первого Строительного Документа
  20. Структурное Уведомление
  21. Количество существующих историй
  22. Количество предлагаемых историй
  23. Добровольная модернизация Мягкой истории
  24. Разрешение только на огонь
  25. Срок действия разрешения
  26. Ориентировочная Стоимость
  27. Пересмотренная Стоимость
  28. Существующее Использование
  29. Существующие Подразделения
  30. Предлагаемое Использование
  31. Предлагаемые Единицы Измерения
  32. Планеты
  33. Соответствие требованиям TIDF
  34. Существующий Тип Конструкции
  35. Описание существующего типа конструкции
  36. Предлагаемый Тип Конструкции
  37. Описание предлагаемого Типа конструкции
  38. Разрешение на строительство
  39. Надзорный округ
  40. Окрестности – Границы анализа
  41. Почтовый индекс
  42. Местоположение
  43. Идентификатор записи

2. Удаление ненужных столбцов

Когда мы посмотрели на набор данных, мы увидели, что в наборе данных так много столбцов. Но для обработки мы можем пропустить некоторые столбцы во время обработки.

А пока давайте отбросим некоторые случайные столбцы, а именно Соответствие TIDF, Разрешение только на огонь, Суффикс единицы, Блок и Лот.

columns_to_drop=['TIDF Compliance', 'Fire Only Permit', 'Unit Suffix', 'Block','Lot']
data_dropcol=data.drop(columns_to_drop,axis=1)

Сначала мы создадим список, в котором будут храниться все имена столбцов, которые будут удалены из набора данных.

В следующей строке мы использовали функцию drop и передали созданный список в функцию. Мы также передаем параметр axis , значение которого может быть либо 0 (падение по строке), либо 1 (падение по столбцу)

После выполнения кода новые данные содержат только 38 столбцов, а не 43.

3. Удалите Отсутствующие Строки Значений

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

no_missing = data_dropcol.isnull().sum()
total_missing=no_missing.sum()

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

drop_miss_value=data_dropcol.dropna(axis=1)

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

Вывод

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

Надеюсь, вы чему-то научились! Спасибо, что прочитали!