library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union

Dataset

trees
##    Girth Height Volume
## 1    8.3     70   10.3
## 2    8.6     65   10.3
## 3    8.8     63   10.2
## 4   10.5     72   16.4
## 5   10.7     81   18.8
## 6   10.8     83   19.7
## 7   11.0     66   15.6
## 8   11.0     75   18.2
## 9   11.1     80   22.6
## 10  11.2     75   19.9
## 11  11.3     79   24.2
## 12  11.4     76   21.0
## 13  11.4     76   21.4
## 14  11.7     69   21.3
## 15  12.0     75   19.1
## 16  12.9     74   22.2
## 17  12.9     85   33.8
## 18  13.3     86   27.4
## 19  13.7     71   25.7
## 20  13.8     64   24.9
## 21  14.0     78   34.5
## 22  14.2     80   31.7
## 23  14.5     74   36.3
## 24  16.0     72   38.3
## 25  16.3     77   42.6
## 26  17.3     81   55.4
## 27  17.5     82   55.7
## 28  17.9     80   58.3
## 29  18.0     80   51.5
## 30  18.0     80   51.0
## 31  20.6     87   77.0

Fungsi

1. summarise()

Merangkum dataset menjadi rata-rata untuk kolom Girth, Height, dan Volume.

summarised_trees <- trees %>%
  summarise(
    avg_Girth = mean(Girth),
    avg_Height = mean(Height),
    avg_Volume = mean(Volume)
  )
summarised_trees
##   avg_Girth avg_Height avg_Volume
## 1  13.24839         76   30.17097

2. arrange()

Mengurutkan data berdasarkan Height secara menurun.

arranged_trees <- trees %>%
  arrange(desc(Height))
arranged_trees
##    Girth Height Volume
## 1   20.6     87   77.0
## 2   13.3     86   27.4
## 3   12.9     85   33.8
## 4   10.8     83   19.7
## 5   17.5     82   55.7
## 6   10.7     81   18.8
## 7   17.3     81   55.4
## 8   11.1     80   22.6
## 9   14.2     80   31.7
## 10  17.9     80   58.3
## 11  18.0     80   51.5
## 12  18.0     80   51.0
## 13  11.3     79   24.2
## 14  14.0     78   34.5
## 15  16.3     77   42.6
## 16  11.4     76   21.0
## 17  11.4     76   21.4
## 18  11.0     75   18.2
## 19  11.2     75   19.9
## 20  12.0     75   19.1
## 21  12.9     74   22.2
## 22  14.5     74   36.3
## 23  10.5     72   16.4
## 24  16.0     72   38.3
## 25  13.7     71   25.7
## 26   8.3     70   10.3
## 27  11.7     69   21.3
## 28  11.0     66   15.6
## 29   8.6     65   10.3
## 30  13.8     64   24.9
## 31   8.8     63   10.2

3. filter()

Menampilkan data yang memiliki Height diatas 80 dan Volume diatas 50.

filtered_trees <- trees %>%
  filter(Height > 80, Volume > 50)
filtered_trees
##   Girth Height Volume
## 1  17.3     81   55.4
## 2  17.5     82   55.7
## 3  20.6     87   77.0

4. mutate()

Menambah kolom Volume_Girth_Ratio dan Volume_Category pada dataset.

mutated_trees <- trees %>%
  mutate(
    Volume_Girth_Ratio = Volume / Girth,
    Volume_Category = case_when(
      Volume <= 20 ~ "Low",
      Volume > 20 & Volume <= 40 ~ "Medium",
      Volume > 40 ~ "High"
    )
  )
mutated_trees
##    Girth Height Volume Volume_Girth_Ratio Volume_Category
## 1    8.3     70   10.3           1.240964             Low
## 2    8.6     65   10.3           1.197674             Low
## 3    8.8     63   10.2           1.159091             Low
## 4   10.5     72   16.4           1.561905             Low
## 5   10.7     81   18.8           1.757009             Low
## 6   10.8     83   19.7           1.824074             Low
## 7   11.0     66   15.6           1.418182             Low
## 8   11.0     75   18.2           1.654545             Low
## 9   11.1     80   22.6           2.036036          Medium
## 10  11.2     75   19.9           1.776786             Low
## 11  11.3     79   24.2           2.141593          Medium
## 12  11.4     76   21.0           1.842105          Medium
## 13  11.4     76   21.4           1.877193          Medium
## 14  11.7     69   21.3           1.820513          Medium
## 15  12.0     75   19.1           1.591667             Low
## 16  12.9     74   22.2           1.720930          Medium
## 17  12.9     85   33.8           2.620155          Medium
## 18  13.3     86   27.4           2.060150          Medium
## 19  13.7     71   25.7           1.875912          Medium
## 20  13.8     64   24.9           1.804348          Medium
## 21  14.0     78   34.5           2.464286          Medium
## 22  14.2     80   31.7           2.232394          Medium
## 23  14.5     74   36.3           2.503448          Medium
## 24  16.0     72   38.3           2.393750          Medium
## 25  16.3     77   42.6           2.613497            High
## 26  17.3     81   55.4           3.202312            High
## 27  17.5     82   55.7           3.182857            High
## 28  17.9     80   58.3           3.256983            High
## 29  18.0     80   51.5           2.861111            High
## 30  18.0     80   51.0           2.833333            High
## 31  20.6     87   77.0           3.737864            High

5. select()

Menampilkan kolom Girth, Volume, dan Volume_Category.

selected_trees <- mutated_trees %>%
  select(Girth, Volume, Volume_Category)
selected_trees
##    Girth Volume Volume_Category
## 1    8.3   10.3             Low
## 2    8.6   10.3             Low
## 3    8.8   10.2             Low
## 4   10.5   16.4             Low
## 5   10.7   18.8             Low
## 6   10.8   19.7             Low
## 7   11.0   15.6             Low
## 8   11.0   18.2             Low
## 9   11.1   22.6          Medium
## 10  11.2   19.9             Low
## 11  11.3   24.2          Medium
## 12  11.4   21.0          Medium
## 13  11.4   21.4          Medium
## 14  11.7   21.3          Medium
## 15  12.0   19.1             Low
## 16  12.9   22.2          Medium
## 17  12.9   33.8          Medium
## 18  13.3   27.4          Medium
## 19  13.7   25.7          Medium
## 20  13.8   24.9          Medium
## 21  14.0   34.5          Medium
## 22  14.2   31.7          Medium
## 23  14.5   36.3          Medium
## 24  16.0   38.3          Medium
## 25  16.3   42.6            High
## 26  17.3   55.4            High
## 27  17.5   55.7            High
## 28  17.9   58.3            High
## 29  18.0   51.5            High
## 30  18.0   51.0            High
## 31  20.6   77.0            High

2 Fungsi Bersamaan

select() dan filter()

Menampilkan kolom Girth, Height, Volume, Volume_Category dengan Volume_Category medium.

selected_filtered_trees <- mutated_trees %>%
  select(Girth, Height, Volume, Volume_Category) %>%
  filter(Volume_Category == "Medium")
selected_filtered_trees
##    Girth Height Volume Volume_Category
## 1   11.1     80   22.6          Medium
## 2   11.3     79   24.2          Medium
## 3   11.4     76   21.0          Medium
## 4   11.4     76   21.4          Medium
## 5   11.7     69   21.3          Medium
## 6   12.9     74   22.2          Medium
## 7   12.9     85   33.8          Medium
## 8   13.3     86   27.4          Medium
## 9   13.7     71   25.7          Medium
## 10  13.8     64   24.9          Medium
## 11  14.0     78   34.5          Medium
## 12  14.2     80   31.7          Medium
## 13  14.5     74   36.3          Medium
## 14  16.0     72   38.3          Medium