user

Авторизация

Добро пожаловать!

Регистрация

Undefined666

Кодинг

Принципы очистки данных: от большого к малому

 Большую часть времени специалисты по данным тратят на очистку данных.

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

 Будь то текст, изображение, видео, табличные или графические данные: даже эти высокоуровневые различия в натуре уже подразумевают серьезные изменения в процессе очистки.

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

 О том, как очищать данные и обрабатывать их, написано много, и одной из самых известных статей является статья Хэдли Уикхема 2014 года Tidy Data . Ниже мы используем некоторые выводы из этой статьи.

Каждый беспорядочный набор данных запутан по-своему

 Как отмечает газета

«Как и семьи, аккуратные наборы данных похожи друг на друга, но каждый беспорядочный набор данных запутан по-своему».

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

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

Стандарт аккуратных данных

 Что такое аккуратные данные? Хэдли утверждает, что аккуратные данные должны иметь одну переменную на столбец, одно наблюдение на строку и один уровень агрегирования на таблицу.

 Возможно, это определение нацелено на табличные данные, но может быть расширено также, например, на текстовые данные (один документ на строку, один токен на переменную) или данные изображения (одно изображение на строку, один пиксель на столбец).

 Я думаю, что могут быть разные типы «беспорядка». Либо на уровне фрейма данных , либо на уровне переменных — см. эти примеры:

 Что такое грязные фреймы данных?

  • Вложенные кадры данных, т.е. кадры данных внутри переменной
  • Один и тот же набор данных разбросан по нескольким файлам
  • Неполадки при чтении данных (крик «,» и «;»)
  • Несколько слоев агрегации объединены вместе (хотя иногда это необходимо, они должны храниться в отдельных кадрах данных; по крайней мере, до анализа)

 Что такое беспорядочные переменные?

  • Единицы записываются внутри значения, например, «1 см» для переменной length вместо значения 1. Бонус: разные единицы измерения в одной и той же переменной, например, «1 см», «0,02 м», …
  • Ошибки кодирования в данных
  • Отсутствующие значения (иногда, поскольку они сами могут рассматриваться как информация)
  • Невозможные значения (например, человек ростом 3,6 м)

 В конечном итоге беспорядок имеет значение?

 Не совсем, так как мы должны иметь дело с ними в любом случае.

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

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

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

Отсюда мы получаем первый принцип очистки данных: от большого к малому.

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