Skip to content

ViSensej/Data_Cleaning_Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Очистка данных на Python

Оглавление

  1. Описание проекта
  2. Описание данных
  3. Зависимости
  4. Установка проекта
  5. Использование проекта
  6. Авторы
  7. Выводы

Описание проекта

Очистка данных (data cleaning) – это процесс обнаружения и удаления (или исправления) поврежденных, ложных или неинформативных записей таблицы или целой базы данных. Процесс состоит из двух этапов: поиск и ликвидация (или редактирование).

Основные этапы очистки данных:

  • Работа с пропущенными значениями.
  • Очистка данных от пропусков.
  • Удаление признаков и записей, которые не несут полезной информации.

Цель очистки данных — избавиться от «мусора», который может помешать моделированию или исказить его результаты. Во многих задачах очистка данных — это самая главная часть этапа подготовки данных к построению модели, которая нередко занимает большую часть времени работы над задачей.

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

Данный проект направлен на демонстрацию применения различных методов очистки данных на каждом из ее этапов на примере датасета о квартирах в Москве от Сбербанка.

О структуре проекта:

  • data - папка с исходными табличными данными
  • images - папка с изображениями, необходимыми для проекта
  • outliers_lib - папка со вспомогательными модулями для обработки выбросов
  • data_cleaning_example.ipynb - jupyter-ноутбук, содержащий основной код проекта, в котором демонстрируются методы и подходы решения задач очистки данных

Описание данных

В этом проекте используются данные с соревнования Sberbank Russian Housing Market от Сбера (бывш. Сбербанк).

Требования Сбера состояли в построении модели, которая бы прогнозировала цены на жильё в Москве, опираясь на параметры самого жилья, а также состояние экономики и финансового сектора в стране.

Исходный датасет представляет собой набор данных из таблицы с информацией о параметрах жилья в Москве и Московской области, а также таблицы, в которой содержатся 292 признака о состоянии экономики России на момент продажи недвижимости.

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

Используемые зависимости

Установка проекта

git clone https://github.com/SkillfactoryDS/DataCleaningProject

Использование

Вся информация о работе представлена в jupyter-ноутбуке data_cleaning_example.ipynb.

Авторы

Выводы

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

About

Данный проект направлен на демонстрацию применения различных методов очистки данных

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published