Обработка данных
Обработка данных (англ. 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].
Примечание: преимущества проявляются при тщательной документации шагов и использовании систем версионирования; в противном случае процесс обработки может стать трудозатратным и подверженным ошибкам.
Основные этапы
Ключевые шаги процесса обработки данных:
- Обнаружение данных — изучение данных и их особенностей, первый этап знакомства со структурой выборки.
- Структурирование — организация данных; «сырые» данные, как правило, не структурированы и содержат много нерелевантной информации, структурирование облегчает дальнейшую обработку.
- Очистка — удаление выбросов, различий в форматах дат, корректировка пустых значений, приведение к единым формам во избежание искажения результатов.
- Обогащение — добавление новых данных, которые могут повысить ценность всего набора.
- Валидация — применение цикличных правил валидации для обеспечения целостности, качества и безопасности. Пример: кросс-проверка полей для подтверждения их корректности.
- Публикация — подготовка набора к использованию внешними пользователями или программами; обязательна документация логики и этапов преобразований.
Данные шаги повторяются итеративно до получения чистого и пригодного для анализа данных набора. Процесс трудоёмкий, но позволяет извлечь полезную информацию из неструктурированных массивов.
| Имя | Телефон | Дата рождения | Штат |
|---|---|---|---|
| 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 и др.
Пример
Рассмотрим задачу: имеется выборка по медицинским пациентам, требуется выявить корреляции для заболевания. Перед запуском анализа необходимо осознать цель: ищем ли мы пациентов с заболеванием или сопутствующие болезни? После определения критериев начинается собственно обработка данных.
Первым делом определяют структуру конечного набора: какие признаки важны для постановки диагноза.
Далее производится чистка: удаляют лишние и некорректные данные, например, пациентов без диагноза.
Затем вновь анализируют массив: возможно, есть дополнительная доступная информация (например, о распространённых заболеваниях в регионе).
Следом — валидация: задают правила для логической проверки корректности отдельных полей (дата рождения, наличие признака заболевания и т. д.).
После этих этапов данные считаются готовыми для анализа: они структурированы, проверены и пригодны для развертывания или экспертизы. Такой подход позволяет свести массив к состоянию, легко поддающемуся анализу на предмет искомых закономерностей.
Примечания
- ↑ What Is Data Munging? Дата обращения: 21 января 2022. Архивировано 18 августа 2013 года.
- ↑ “mung”. Mung. Jargon File. Архивировано из оригинала 2012-09-18. Дата обращения 2012-10-10. Используется устаревший параметр
|url-status=(справка) - ↑ As coder is for code, X is for data. Open Knowledge Foundation. Дата обращения: 15 апреля 2021. Архивировано 15 апреля 2021 года.
- ↑ 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.
- ↑ What Is Data Wrangling? What are the steps in data wrangling? (амер. англ.). Express Analytics (22 апреля 2020). Дата обращения: 6 декабря 2020. Архивировано 1 ноября 2020 года.
- ↑ Wickham, Hadley (2014). “Tidy Data”. Journal of Statistical Software. 59 (10). DOI:10.18637/jss.v059.i10. Дата обращения 2025-08-15.
- ↑ 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.
- ↑ OpenRefine documentation. OpenRefine (29 декабря 2022). Дата обращения: 15 августа 2025. Архивировано 20 октября 2025 года.
- ↑ Wickham, Hadley. Глава 9: Введение в обработку данных // R для науки о данных: импорт, структурирование, преобразование, визуализация и моделирование / Hadley Wickham, Garrett Grolemund. — First. — Sebastopol, CA : O'Reilly, 2016. — ISBN 978-1-4919-1039-9.
- ↑ 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.
- ↑ What is Data Franchising? IRI (2003). Дата обращения: 15 апреля 2021. Архивировано 15 апреля 2021 года.
Литература
- Wickham, Hadley. Глава 9: Введение в обработку данных // R для науки о данных: импорт, структурирование, преобразование, визуализация и моделирование / Hadley Wickham, Garrett Grolemund. — First. — Sebastopol, CA : O'Reilly, 2016. — ISBN 978-1-4919-1039-9.
- Wickham, Hadley (2014). “Tidy Data”. Journal of Statistical Software. 59 (10). DOI:10.18637/jss.v059.i10. Дата обращения 2025-08-15.
Ссылки
- Что такое обработка данных? Преимущества, инструменты и навыки (англ.). My Influencer Journey. Дата обращения: 26 января 2022.