Обработка данных


Обработка данных (англ. Data wrangling, также англ. data munging) — процесс преобразования и сопоставления данных из одного состояния («сырого») в другой формат с целью сделать их более пригодными и ценными для различных дальнейших применений, таких как аналитика. Основная задача обработки данных — обеспечить качество и полезность данных. Аналитики данных, как правило, тратят большую часть времени именно на обработку данных, а не на их анализ.

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

История

Термин «obработка данных» в неформальном смысле часто связывают с проектами Национальной программы цифровой информации и сохранения (NDIIPP) Библиотеки Конгресса США и партнёра программы — библиотек Университета Эмори, объединённых в MetaArchive Partnership. Слово «mung» имеет корни в компьютерном жаргоне, что отражено в Jargon File[2]. Также термин «специалист по обработке данных» сравнён с аналогичным определением для программиста[3].

Одно из первых упоминаний обработки данных в научном контексте относится к работе Дональда Клайна на эксперименте NASA/NOAA Cold Lands Processes[4]. Клайн отмечал, что специалисты по обработке данных «координируют сбор всей коллекции экспериментальных данных». В его описании также выделена работа администратора хранения при обработке больших массивов данных. Подобные специалисты востребованы как в крупных исследовательских проектах, так и при создании фильмов с большим количеством сложной компьютерной графики. В исследовательских задачах это предполагает и передачу данных с прибора в грид-хранилище, и их последующую обработку с помощью высокопроизводительных систем или получения доступа через цифровые библиотеки.

С развитием искусственного интеллекта в области аналитики данных становится всё более важным поддерживать автоматизацию этапов обработки с жёсткими проверками. Именно поэтому процесс «munging» пока не полностью автоматизирован средствами машинного обучения: обработка данных требует не только автоматизации, но и понимания, какую информацию следует удалять, чего существующие системы искусственного интеллекта достигли ещё не в полной мере[5].

Связь с интеллектуальным анализом данных

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

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

Преимущества

Грамотно организованная обработка данных даёт следующие преимущества для аналитики:

  • Готовность к анализу и повышение качества данных. Преобразование наборов в единые, «аккуратные» структуры минимизирует необходимость ручной доработки и упрощает моделирование и визуализацию[6].
  • Воспроизводимость и возможность аудита. Фиксация преобразований в виде скриптов или ноутбуков создаёт явную историю шагов и позволяет отслеживать происхождение результатов; интерактивные системы (например, Wrangler) формируют редактируемую историю преобразований[7].
  • Эффективность и повторное использование. Инструменты, использующие смешанные подходы, могут автоматически подбирать преобразования, поддерживать повторное использование скриптов при обновлении данных и повышать производительность[7].
  • Интеграция и обогащение данных. Инструменты обработки данных позволяют объединять различные источники и обогащать наборы через сверку или внешние сервисы. Так, OpenRefine поддерживает кластеризацию, преобразование и сверку с внешними источниками[8].

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

Основные этапы

undefined

Ключевые шаги процесса обработки данных:

  1. Обнаружение данных — изучение данных и их особенностей, первый этап знакомства со структурой выборки.
  2. Структурирование — организация данных; «сырые» данные, как правило, не структурированы и содержат много нерелевантной информации, структурирование облегчает дальнейшую обработку.
  3. Очистка — удаление выбросов, различий в форматах дат, корректировка пустых значений, приведение к единым формам во избежание искажения результатов.
  4. Обогащение — добавление новых данных, которые могут повысить ценность всего набора.
  5. Валидация — применение цикличных правил валидации для обеспечения целостности, качества и безопасности. Пример: кросс-проверка полей для подтверждения их корректности.
  6. Публикация — подготовка набора к использованию внешними пользователями или программами; обязательна документация логики и этапов преобразований.

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

Исходные данные
Имя Телефон Дата рождения Штат
John, Smith 445-881-4478 12 августа 1989 Maine
Jennifer Tal +1-189-456-4513 11/12/1965 Tx
Gates, Bill (876)546-8165 15 июня 72 Kansas
Alan Fitch 5493156648 2-6-1985 Oh
Jacob Alan 156-4896 3 января Alabama
Результат
Имя Телефон Дата рождения Штат
John Smith 445-881-4478 1989-08-12 Maine
Jennifer Tal 189-456-4513 1965-11-12 Texas
Bill Gates 876-546-8165 1972-06-15 Kansas
Alan Fitch 549-315-6648 1985-02-06 Ohio

Итог применения обработки данных к данному набору — создание легко читаемого и стандартизированного массива: все имена приведены к формату {имя фамилия}, номера телефонов — к {код-XXX-XXXX}; даты — к {ГГГГ-ММ-ДД}, сокращения штатов заменены на полные названия. Не все данные были полными (у Jacob Alan отсутствовал код области и год рождения), поэтому эта строка была удалена из итогового набора. Теперь данные готовы к использованию или дальнейшему анализу.

Типовое применение

Преобразования данных применяются к отдельным сущностям (например, столбцам, строкам, значениям) и могут включать извлечение, разбор, объединение, стандартизацию, обогащение, очистку, консолидацию и фильтрацию для получения необходимых выходных данных.

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

Модус операнди

В зависимости от объёма и формата входных данных обработка традиционно выполняется вручную (например, в электронных таблицах Excel), с помощью инструментов типа KNIME или с использованием скриптов на языках Python или SQL. Язык R, применяемый в области data mining и статистической аналитики, также широко применяется для обработки данных[9]. Для специалистов по обработке данных характерны навыки в R или Python, SQL, PHP, Scala и других языках анализа.

Визуальные системы обработки данных разработаны для расширения доступа к инструментам по преобразованию для непрофессионалов и упрощения работы для программистов. Многие из них включают элементы рекомендательных систем и программирование на примерах с автоматической генерацией кода. К первым прототипам подобных систем относятся OpenRefine и исследовательская система Wrangler Стэнфорда и Беркли[10]; последняя эволюционировала в Trifacta.

В англоязычной литературе также встречаются термины: data franchising[11], data preparation, data munging и др.

Пример

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

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

Далее производится чистка: удаляют лишние и некорректные данные, например, пациентов без диагноза.

Затем вновь анализируют массив: возможно, есть дополнительная доступная информация (например, о распространённых заболеваниях в регионе).

Следом — валидация: задают правила для логической проверки корректности отдельных полей (дата рождения, наличие признака заболевания и т. д.).

После этих этапов данные считаются готовыми для анализа: они структурированы, проверены и пригодны для развертывания или экспертизы. Такой подход позволяет свести массив к состоянию, легко поддающемуся анализу на предмет искомых закономерностей.

Примечания

  1. What Is Data Munging? Дата обращения: 21 января 2022. Архивировано 18 августа 2013 года.
  2. “mung”. Mung. Jargon File. Архивировано из оригинала 2012-09-18. Дата обращения 2012-10-10. Используется устаревший параметр |url-status= (справка)
  3. As coder is for code, X is for data. Open Knowledge Foundation. Дата обращения: 15 апреля 2021. Архивировано 15 апреля 2021 года.
  4. Parsons, M. A.; Brodzik, M. J.; Rutter, N. J. (2004). “Data management for the Cold Land Processes Experiment: improving hydrological science”. Hydrological Processes. 18 (18): 3637—3653. Bibcode:2004HyPr...18.3637P. DOI:10.1002/hyp.5801. S2CID 129774847.
  5. What Is Data Wrangling? What are the steps in data wrangling? (амер. англ.). Express Analytics (22 апреля 2020). Дата обращения: 6 декабря 2020. Архивировано 1 ноября 2020 года.
  6. Wickham, Hadley (2014). “Tidy Data”. Journal of Statistical Software. 59 (10). DOI:10.18637/jss.v059.i10. Дата обращения 2025-08-15.
  7. 1 2 Kandel, Sean; Paepcke, Andreas; Hellerstein, Joseph M.; Heer, Jeffrey (2011). “Wrangler: Interactive Visual Specification of Data Transformation Scripts” (PDF). Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. pp. 3363—3372. DOI:10.1145/1978942.1979444. Дата обращения 2025-08-15.
  8. OpenRefine documentation. OpenRefine (29 декабря 2022). Дата обращения: 15 августа 2025. Архивировано 20 октября 2025 года.
  9. Wickham, Hadley. Глава 9: Введение в обработку данных // R для науки о данных: импорт, структурирование, преобразование, визуализация и моделирование / Hadley Wickham, Garrett Grolemund. — First. — Sebastopol, CA : O'Reilly, 2016. — ISBN 978-1-4919-1039-9.
  10. Kandel, Sean. Wrangler: Interactive visual specification of data transformation scripts // Proceedings of the SIGCHI Conference on Human Factors in Computing Systems / Sean Kandel, Andreas Paepcke. — 2011-05. — P. 3363–3372. — ISBN 978-1-4503-0228-9. — doi:10.1145/1978942.1979444.
  11. What is Data Franchising? IRI (2003). Дата обращения: 15 апреля 2021. Архивировано 15 апреля 2021 года.

Литература

Ссылки

Категории