Эта статья является девятой из серии Начало работы с наукой о данных за 30 дней с помощью программирования на языке R. Все остальные статьи вы можете прочитать здесь.

Причина огромной популярности sql среди программного сообщества неизменно заключается в лучших и простых методах манипулирования данными, которые он предоставляет с помощью таких команд, как select (), groupby ().

Вы когда-нибудь пытались выполнять аналогичные задачи со своими наборами данных в R, например, выбирать только несколько строк или группировать их? Если вы это сделали, вы, должно быть, знаете о «dplyr»

Пакет ‘Dplyr’, разработанный и поддерживаемый Hadley Wickham, предоставляет одни из лучших методологий обработки данных, которые делают наш анализ данных очень простым. Кроме того, у него есть важная внутренняя часть. Следовательно, требует небольшого вмешательства со стороны компьютера. С точки зрения вышеизложенного, необходимо, чтобы каждый специалист по данным знал, как его использовать. На то, чтобы узнать об этом, нужно 5 минут. Итак, приступим.

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

>install.packages("dplyr") # downloading package into system
> library("dplyr")# loading it into workspace

Dplyr предоставляет следующие команды

  1. фильтр
  2. Выбрать
  3. договариваться
  4. мутировать
  5. суммировать
  6. группа по
  7. sample_n и sample_fac

Фильтр ()

filter () помогает выбрать необходимые строки из набора данных. Это похоже на команду «select» в sql. Первый аргумент - это имя фрейма данных. Здесь, в примере, это 'pima_dataframe1'. Последующие аргументы - это условия.

> head(filter(pima_dataframe1, pima_dataframe1$X148> 165))
  X6 X148 X72 X35  X0 X33.6 X0.627 X50 X1
1  8  183  64   0   0  23.3  0.672  32  1
2  2  197  70  45 543  30.5  0.158  53  1
3 10  168  74   0   0  38.0  0.537  34  1
4  1  189  60  23 846  30.1  0.398  59  1
5  5  166  72  19 175  25.8  0.587  51  1
6  7  196  90   0   0  39.8  0.451  41  1

select ()

select () помогает выбрать только необходимые столбцы из набора данных.

> head(select(pima_dataframe1,X6))
  X6
1  1
2  8
3  1
4  0
5  5
6  3

аранжировать ()

Arrange () помогает расположить строки в соответствии с порядком сортировки данного столбца.

> head(arrange(pima_dataframe1,pima_dataframe1$X148))
 X6 X148 X72 X35 X0 X33.6 X0.627 X50 X1
1 1 0 48 20 0 24.7 0.140 22 0
2 1 0 74 20 23 27.7 0.299 21 0
3 1 0 68 35 0 32.0 0.389 22 0
4 5 0 80 32 0 41.0 0.346 37 1
5 6 0 68 41 0 39.0 0.727 41 1
6 5 44 62 0 0 25.0 0.587 36 0

Мы также можем расположить строки в порядке убывания. Затем строки сортируются по убыванию указанного столбца. Вот он «X148».

>View(arrange(pima_dataframe1, desc(pima_dataframe1$ X148)))

Я добавляю head (), чтобы лучше визуализировать данные.

mutate ()

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

Я добавил новый столбец с именем «X123» со значениями X6 * 2.

> pima_dataframe2<-mutate(dataframe, X123= X6*2)
> head(pima_dataframe2)
  X6 X148 X72 X35  X0 X33.6 X0.627 X50 X1 X123
1  1   85  66  29   0  26.6  0.351  31  0    2
2  8  183  64   0   0  23.3  0.672  32  1   16
3  1   89  66  23  94  28.1  0.167  21  0    2
4  0  137  40  35 168  43.1  2.288  33  1    0
5  5  116  74   0   0  25.6  0.201  30  0   10
6  3   78  50  32  88  31.0  0.248  26  1    6

summarize ()

Функция summarize позволяет нам получить сводный результат в одну строку о наборе данных. summarize () более полезен, когда мы используем команду group_by ().

group_by ()

> dest <- group_by(pima_dataframe1,X6)
> summarise(dest,X148=n_distinct(X148),X1=n())
# A tibble: 17 x 3
      X6  X148    X1
   <int> <int> <int>
 1     0    64   111
 2     1    76   135
 3     2    60   103
 4     3    55    75
 5     4    51    68
 6     5    46    57
 7     6    39    49
 8     7    36    45
 9     8    34    38
10     9    24    28
11    10    19    24
12    11    10    11
13    12     8     9
14    13     9    10
15    14     2     2
16    15     1     1
17    17     1     1

sample_n и sample_frac:

Они используются для получения образцов данных. sample_n используется для фиксированного числа, а sample_frac - для дробного числа.

> head(sample_n(pima_dataframe1,3))
    X6 X148 X72 X35  X0 X33.6 X0.627 X50 X1
137  0   93  60  25  92  28.7  0.532  22  0
210  2   81  60  22   0  27.7  0.290  25  0
763 10  101  76  48 180  32.9  0.171  63  0

Синтаксис sample_frac приведен ниже

>sample_frac(pima_datafram1,0.1)

% ›Оператор цепочки%:

Этот оператор% ›% позволяет нам выполнять разные операции одновременно. Посмотрим, как мы можем это сделать.

> flights %>%
  group_by(year, month, day) %>%
  select(arr_delay, dep_delay) %>%
  summarise(
    arr = mean(arr_delay, na.rm = TRUE),
    dep = mean(dep_delay, na.rm = TRUE)
  ) %>%
  filter(arr > 30 | dep > 30)

Сначала мы выполнили группировку, а затем операцию select () над результирующим фреймом данных, полученным на первом шаге. В результирующем фрейме данных впоследствии были выполнены операции summarize () и filter.

Это важные функции, которые предоставляет пакет «dplyr».

Надеюсь, вам понравилась эта статья !! Дайте мне знать, что вы почувствовали в разделе ответов !!

С Новым Годом!!