Научная статья на тему 'РЕАЛИЗАЦИЯ КОНЦЕПЦИИ АККУРАТНЫХ ДАННЫХ ПОСРЕДСТВОМ TIDYVERSE'

РЕАЛИЗАЦИЯ КОНЦЕПЦИИ АККУРАТНЫХ ДАННЫХ ПОСРЕДСТВОМ TIDYVERSE Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
41
6
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АККУРАТНЫЕ ДАННЫЕ / ЯЗЫК R / TIDYVERSE / TIDY DATA / R LANGUAGE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Хакимова Т.В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Хакимова Т.В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

IMPLEMENTATION OF THE CONCEPT OF TIDY DATA BY MEANS OF TIDYVERSE

The article discusses the implementation of the concept of accurate data using the programming language R. Describes the packages that solve the main tasks of working with data at different stages of analysis. Tidyverse structure is considered.

Текст научной работы на тему «РЕАЛИЗАЦИЯ КОНЦЕПЦИИ АККУРАТНЫХ ДАННЫХ ПОСРЕДСТВОМ TIDYVERSE»

УДК 004.62

Хакимова Т.В. студент магистратуры Хакасский государственный университет им. Н. Ф. Катанова

научный руководитель: Голубничий А.А.

старший преподаватель кафедра ПОВТиАС Россия, г. Абакан РЕАЛИЗАЦИЯ КОНЦЕПЦИИ АККУРАТНЫХ ДАННЫХ ПОСРЕДСТВОМ TIDYVERSE

Аннотация: В статье рассматривается реализация концепции аккуратных данных с использованием языка программирования R. Описываются пакеты, решающие основные задачи работы с данными на разных этапах анализа. Рассматривается структура Tidyverse.

Ключевые слова: аккуратные данные, язык R, Tidyverse

Khakimova T. V. magistracy student Katanov Khakass State University Russia, Abakan Supervisor: Golubnichiy A.A.

Senior lecturer department of computing software and automated systems IMPLEMENTATION OF THE CONCEPT OF TIDY DATA BY MEANS OF TIDYVERSE

Abstract: The article discusses the implementation of the concept of accurate data using the programming language R. Describes the packages that solve the main tasks of working with data at different stages of analysis. Tidyverse structure is considered.

Keywords: Tidy Data, R Language, Tidyverse

Во время работы с данными часто возникает необходимость подготовить их под определенные задачи. Более того, большая часть анализа данных может сводиться именно к подготовке данных, по разным оценкам на подготовку данных для последующего анализа может уходить до 80% от общего времени решения задачи [1]. Результатом обработки данных также являются данные, представленные в том или ином виде, по этой причине важно соблюдать общие принципы их обработки и хранения.

Один из ключевых разработчиков RStudio - Хэдли Уикем в статье Tidy Data подробно описал основные принципы, которым должны отвечать аккуратные данные, а также выделил основные причины, по которым данные становятся не аккуратными [2].

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

данных должен иметь один тип.

Основой для реализации концепции аккуратных данных в языке R служат пакеты, разработанные в большей части Хэдли Уикемом и объединенные в пакет tidyverse. Актуальной версией пакета является версия 1.2.1, включающая в себя следующие пакеты: broom, cli, crayon, dplyr, dbplyr, forcats, ggplot2, haven, hms, httr, jsonlite, lubridate, magrittr, modelr, purr, readr, readxl, reprex, rlang, rstudioapi, rvest, stringr, tibble, tidyr, xml2, tidyverse [3].

В зависимости от выполняемых функций, важности и применимости, все пакеты можно условно разделить на те, которые составляют ядро tidyverse и те, которые являются дополнительными. В свою очередь пакеты ядра можно разделить по выполняемым функциям (рисунок 1).

г 1 Импорт m

readr

readxl ■

haven

httr

rvest

xml2 L. A

Преобразование

dplyr forcats

hms lubridate striner

r 4 Визуализация

ggplot2 L J

a Г ^ Моделирование

Ш broom2

modelr

Хранение в аккуратной форме

tibble tidyr

Программирование

purrr magrittr

Рисунок 1 - Основные пакеты tidyverse, расположенные по решаемым

задачам

Импортирование данных. Импортирование данных является сложным процессом, так как изначальные данные могут содержаться в разных форматах. Пакеты tidyverse позволяют работать с таблицами Excel, считывать данные формата JSON и XML, а также парсить сайты и работать с API.

Хранение данных в аккуратной форме. За данную процедуру отвечают два популярных пакета tibble и tidyr. Первый пакет позволяет работать с новым форматом датафрейма - tibble, второй - в значительной степени упрощает процесс получения аккуратных данных.

Преобразование данных. Вопрос преобразования данных, так же как и вопрос считывания, зависит от того, с какими данными ведется работа). Так, для работы с tibble-объектами, оптимальным является использование функций пакета dplyr, а для текстовых данных лучшим вариантом будет использование пакета stringr.

Визуализация данных. Для создания продвинутой программируемой графики уже долгий период времени используется пакет ggplot2, послуживший заменой пакету ggplot. Несмотря на «заточенность» языка программирования R под визуализацию данных [4], базовая графика имеет некоторую ограниченность, снимаемою концепцией ggplot2 по использованию слоев для построения рисунков, через соответствующие

эстетики.

Моделирование. Моделирование в рамках концепции аккуратных данных в tideverse, в настоящее время, находится на начальной стадии. Оба пакета, применяемые для моделирования данных: broom и modelr, находятся в ранних версиях 0.5.2 и 0.1.4 соответственно.

Программирование. Особое место в анализе данных занимают пакеты, применяемые для программирования. Программирование не является составной частью анализа данных, но используется во многом, начиная от импортирования данных и заканчивая визуализацией. Ключевыми для реализации концепции Tidy Data является использование функционального программирования, реализуемого в пакете purrr и оператора pipeline, реализованного в magrittr.

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

Использованные источники:

1. Dasu, T., Johnson T. Exploratory Data Mining and Data Cleaning. - 2003. -Wiley-IEEE.

2. Wickham, H. Tidy Data. Journal of Statistical Software. - 2014. - V.59. - I. 10

3. Tidyverse packages - Tidyverse [Электронный ресурс] URL: https://www.tidyverse.org/packages/ (дата обращения 17.06.2019)

4. R: The R Project for Statistical Computing [Электронный ресурс] URL: https://www.r-project.org (дата обращения 17.06.2019)

i Надоели баннеры? Вы всегда можете отключить рекламу.