Эта статья является девятой из серии Начало работы с наукой о данных за 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 предоставляет следующие команды
- фильтр
- Выбрать
- договариваться
- мутировать
- суммировать
- группа по
- 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».
Надеюсь, вам понравилась эта статья !! Дайте мне знать, что вы почувствовали в разделе ответов !!