Вернуться




Анализ данных в R на примерах и задачах. Мануал Data Science



Анализ данных — это основное направление в языке программирования R; собственно, это та сфера, для которой и был разработан этот язык. В этой сфере он является главным конкурентом языка Python, который также используют при работе с данными. R имеет широкое применение в научной сфере, особенно в социальных и экономических проектах, и рассчитан на работу с огромными объемами информации.

Важно отметить, что R был разработан факультетом статистики Оклендского Университета. То есть он создан статистами для статистики, поэтому анализ данных в R — это его основная деятельность. Именно для этого в нем уже встроены инструменты для работы с данными:

  • тесты;

  • методы анализа;

  • графические инструменты;

  • и др.

Во многих рейтингах за 2020-2021 года R входит в десятку самых популярных языков программирования и занимает 6-8 места.

 

Анализ данных в R, пример 

Давайте рассмотрим некоторые варианты анализа данных в R на простом примере. Допустим, у нас есть некие исходные данные по вашему условному автосалону, они будут иметь следующий вид:

NUM; CAR_NUM; COM_NAME; CAR_NAME; ID_NUM

1;"В359ЕН208";"ООО «KIA-MOTORS»";"KIA SEPHIA";"2228857318689"

2;"В358ЕН208";"ООО «KIA-MOTORS»";"KIA SORENTO";"2228857318688"

3;"В357ЕН208";"ООО «KIA-MOTORS»";"KIA SPORTAGE";"2228857318687"

Пример исходных данных ясен. Давайте посмотрим, что с ними можно сделать.

 

Преобразуем данные

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

  • выгрузить данные из поля COM_NAME в другое поле ORG_NAME;

  • из поля CAR_NAME выгрузим данные в новое поле CAR_BRAND;

  • все остальные поля «опустить».

Это нам поможет сделать следующий скрипт:

ptn <- "^(.+?) (.+)$" 

dt <- data.table(rawdata)[, 

            list(CAR_NUN, COM_NAME, CAR_NAME, ID_NUM,

                 ORG_NAME = gsub(ptn, "\\1" , toupper( COM_NAME )),

                 CAR_BRAND = gsub(ptn, "\\1", toupper( CAR_NAME )))                          

            ]

rm(rawdata) # Clear some memory

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

sort( table(dt$ORG_NAME) )

 

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

 

Проанализируем данные 

А вы знаете все марки автомобилей, которыми торгуете в своем автосалоне? В принципе, знать их нормально, если автосалон небольшой. Но представим, что у вас тысячи автомобилей что тогда? Тогда мы можем провести анализ данных при помощи R и посмотреть, какие марки авто у вас есть в автосалоне, которые, например, начинаются на букву «К».

Делается это несложно:

sort( unique( dt[grep("^К.*", CАR_BRAND), CAR_BRAND]))

 

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

 

Визуализируем данные

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

st <- dt[, list(N = length(CAR_NUM)), by = COM_NAME ] 

st <- st[, COM_NAME := reorder(COM_NANE, K) ]

piedata <- rbind(

  st[ K >= 9 ][ order(K, decreasing=T) ],

  data.table( COM_NAME= "Различные авто", K = sum( st[K < 9]$K) )

  )

piedata

 

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

pie <-  ggplot(piedata, aes( x = "", y = K, fill = COM_NAME)) + 

        geom_bar(stat = "identity") +

        coord_polar(theta = "y")

pie

 

В результате мы получим красивую цветную и информативную диаграмму. Помимо круговой диаграммы, можно вывести данные в ступенчатой диаграмме или тепловой карте — анализ данных в R позволяет визуализировать данные по-разному.

Вообще, количество разнообразных операций, которые выполняет язык программирования R при анализе данных, очень много.

 

Что еще может сделать R с данными?

R при работе с данными может:

  • их обрабатывать, очищать и преобразовывать для различных задач;

  • проводить разнообразные тесты;

  • выполнить разведочный анализ;

  • преобразовывать и работать с таблицами;

  • рисовать диаграммы и графики;

  • создавать интерактивные страницы;

  • и др.

Все эти возможности языка R открываются при использовании его дополнительных библиотек.

 

Заключение

Анализ данных в R происходит проще и четче, чем в любом другом подобном инструменте. R работает с данными из разных сфер, поэтому его можно использовать где угодно. Его огромный плюс он имеет простой синтаксис и не сложен в изучении. Если сравнивать с тем же Python, то R изучить легче. Но отличие в том, что язык программирования R применяется только при работе с данными, в отличие от того же Python, который является языком программирования широкого применения.



Если вам понравилась эта статья поделитесь ею с друзьями, тем самым вы помогаете нам развиваться и добавлять всё больше интересного и полезного контента!




Cхожие статьи





Стоит ли учиться программировать в 2021

Стоит ли учиться программировать в 2021

Не случайно в разговорах о рынке труда, перспективах развития и важнейших с ...

21 Февраля 2021    Другое

Плюсы и минусы Baas для разработки мобильных приложений

Плюсы и минусы Baas для разработки мобильных приложений

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

23 Марта 2021    Другое

Начинающий программист

Начинающий программист

Самыми легкими в изучении можно считать такие языки как JavaScript, Python, ...

23 Марта 2021    Другое



Напишем