library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.3.2
## Warning: package 'lubridate' was built under R version 4.3.2
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.3 ✔ readr 2.1.4
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ ggplot2 3.4.4 ✔ tibble 3.2.1
## ✔ lubridate 1.9.3 ✔ tidyr 1.3.0
## ✔ purrr 1.0.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(datasets)
data(iris)
iris <- tibble::as.tibble(iris)
## Warning: `as.tibble()` was deprecated in tibble 2.0.0.
## ℹ Please use `as_tibble()` instead.
## ℹ The signature and semantics have changed, see `?as_tibble`.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
class(iris)
## [1] "tbl_df" "tbl" "data.frame"
head(iris)
## # A tibble: 6 × 5
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## <dbl> <dbl> <dbl> <dbl> <fct>
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
glimpse(iris)
## Rows: 150
## Columns: 5
## $ Sepal.Length <dbl> 5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.…
## $ Sepal.Width <dbl> 3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.…
## $ Petal.Length <dbl> 1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.…
## $ Petal.Width <dbl> 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.…
## $ Species <fct> setosa, setosa, setosa, setosa, setosa, setosa, setosa, s…
mean(iris$Sepal.Length)
## [1] 5.843333
mean(iris$Sepal.Length) == iris$Sepal.Length %>% mean ()
## [1] TRUE
x <- c(0.109, 0.359, 0.63, 0.996, 0.515, 0.142, 0.017, 0.829, 0.907)
x
## [1] 0.109 0.359 0.630 0.996 0.515 0.142 0.017 0.829 0.907
round(exp(diff(log(x))),1)
## [1] 3.3 1.8 1.6 0.5 0.3 0.1 48.8 1.1
x %>% log() %>%
diff() %>%
exp() %>%
round(1)
## [1] 3.3 1.8 1.6 0.5 0.3 0.1 48.8 1.1
#summarize dplyr
## Menghitung rata-rata
iris %>% group_by(Species) %>% summarize(mean=mean(Sepal.Length))
## # A tibble: 3 × 2
## Species mean
## <fct> <dbl>
## 1 setosa 5.01
## 2 versicolor 5.94
## 3 virginica 6.59
## Mengurutkan berdasarkan peubah Sepal.Length dari nilai terkecil
iris %>% arrange(Sepal.Length)
## # A tibble: 150 × 5
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## <dbl> <dbl> <dbl> <dbl> <fct>
## 1 4.3 3 1.1 0.1 setosa
## 2 4.4 2.9 1.4 0.2 setosa
## 3 4.4 3 1.3 0.2 setosa
## 4 4.4 3.2 1.3 0.2 setosa
## 5 4.5 2.3 1.3 0.3 setosa
## 6 4.6 3.1 1.5 0.2 setosa
## 7 4.6 3.4 1.4 0.3 setosa
## 8 4.6 3.6 1 0.2 setosa
## 9 4.6 3.2 1.4 0.2 setosa
## 10 4.7 3.2 1.3 0.2 setosa
## # ℹ 140 more rows
## Mengurutkan berdasarkan peubah Sepal.leght dari nilai terbesar
iris %>% arrange(desc(Sepal.Length)) %>%
print(n=150)
## # A tibble: 150 × 5
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## <dbl> <dbl> <dbl> <dbl> <fct>
## 1 7.9 3.8 6.4 2 virginica
## 2 7.7 3.8 6.7 2.2 virginica
## 3 7.7 2.6 6.9 2.3 virginica
## 4 7.7 2.8 6.7 2 virginica
## 5 7.7 3 6.1 2.3 virginica
## 6 7.6 3 6.6 2.1 virginica
## 7 7.4 2.8 6.1 1.9 virginica
## 8 7.3 2.9 6.3 1.8 virginica
## 9 7.2 3.6 6.1 2.5 virginica
## 10 7.2 3.2 6 1.8 virginica
## 11 7.2 3 5.8 1.6 virginica
## 12 7.1 3 5.9 2.1 virginica
## 13 7 3.2 4.7 1.4 versicolor
## 14 6.9 3.1 4.9 1.5 versicolor
## 15 6.9 3.2 5.7 2.3 virginica
## 16 6.9 3.1 5.4 2.1 virginica
## 17 6.9 3.1 5.1 2.3 virginica
## 18 6.8 2.8 4.8 1.4 versicolor
## 19 6.8 3 5.5 2.1 virginica
## 20 6.8 3.2 5.9 2.3 virginica
## 21 6.7 3.1 4.4 1.4 versicolor
## 22 6.7 3 5 1.7 versicolor
## 23 6.7 3.1 4.7 1.5 versicolor
## 24 6.7 2.5 5.8 1.8 virginica
## 25 6.7 3.3 5.7 2.1 virginica
## 26 6.7 3.1 5.6 2.4 virginica
## 27 6.7 3.3 5.7 2.5 virginica
## 28 6.7 3 5.2 2.3 virginica
## 29 6.6 2.9 4.6 1.3 versicolor
## 30 6.6 3 4.4 1.4 versicolor
## 31 6.5 2.8 4.6 1.5 versicolor
## 32 6.5 3 5.8 2.2 virginica
## 33 6.5 3.2 5.1 2 virginica
## 34 6.5 3 5.5 1.8 virginica
## 35 6.5 3 5.2 2 virginica
## 36 6.4 3.2 4.5 1.5 versicolor
## 37 6.4 2.9 4.3 1.3 versicolor
## 38 6.4 2.7 5.3 1.9 virginica
## 39 6.4 3.2 5.3 2.3 virginica
## 40 6.4 2.8 5.6 2.1 virginica
## 41 6.4 2.8 5.6 2.2 virginica
## 42 6.4 3.1 5.5 1.8 virginica
## 43 6.3 3.3 4.7 1.6 versicolor
## 44 6.3 2.5 4.9 1.5 versicolor
## 45 6.3 2.3 4.4 1.3 versicolor
## 46 6.3 3.3 6 2.5 virginica
## 47 6.3 2.9 5.6 1.8 virginica
## 48 6.3 2.7 4.9 1.8 virginica
## 49 6.3 2.8 5.1 1.5 virginica
## 50 6.3 3.4 5.6 2.4 virginica
## 51 6.3 2.5 5 1.9 virginica
## 52 6.2 2.2 4.5 1.5 versicolor
## 53 6.2 2.9 4.3 1.3 versicolor
## 54 6.2 2.8 4.8 1.8 virginica
## 55 6.2 3.4 5.4 2.3 virginica
## 56 6.1 2.9 4.7 1.4 versicolor
## 57 6.1 2.8 4 1.3 versicolor
## 58 6.1 2.8 4.7 1.2 versicolor
## 59 6.1 3 4.6 1.4 versicolor
## 60 6.1 3 4.9 1.8 virginica
## 61 6.1 2.6 5.6 1.4 virginica
## 62 6 2.2 4 1 versicolor
## 63 6 2.9 4.5 1.5 versicolor
## 64 6 2.7 5.1 1.6 versicolor
## 65 6 3.4 4.5 1.6 versicolor
## 66 6 2.2 5 1.5 virginica
## 67 6 3 4.8 1.8 virginica
## 68 5.9 3 4.2 1.5 versicolor
## 69 5.9 3.2 4.8 1.8 versicolor
## 70 5.9 3 5.1 1.8 virginica
## 71 5.8 4 1.2 0.2 setosa
## 72 5.8 2.7 4.1 1 versicolor
## 73 5.8 2.7 3.9 1.2 versicolor
## 74 5.8 2.6 4 1.2 versicolor
## 75 5.8 2.7 5.1 1.9 virginica
## 76 5.8 2.8 5.1 2.4 virginica
## 77 5.8 2.7 5.1 1.9 virginica
## 78 5.7 4.4 1.5 0.4 setosa
## 79 5.7 3.8 1.7 0.3 setosa
## 80 5.7 2.8 4.5 1.3 versicolor
## 81 5.7 2.6 3.5 1 versicolor
## 82 5.7 3 4.2 1.2 versicolor
## 83 5.7 2.9 4.2 1.3 versicolor
## 84 5.7 2.8 4.1 1.3 versicolor
## 85 5.7 2.5 5 2 virginica
## 86 5.6 2.9 3.6 1.3 versicolor
## 87 5.6 3 4.5 1.5 versicolor
## 88 5.6 2.5 3.9 1.1 versicolor
## 89 5.6 3 4.1 1.3 versicolor
## 90 5.6 2.7 4.2 1.3 versicolor
## 91 5.6 2.8 4.9 2 virginica
## 92 5.5 4.2 1.4 0.2 setosa
## 93 5.5 3.5 1.3 0.2 setosa
## 94 5.5 2.3 4 1.3 versicolor
## 95 5.5 2.4 3.8 1.1 versicolor
## 96 5.5 2.4 3.7 1 versicolor
## 97 5.5 2.5 4 1.3 versicolor
## 98 5.5 2.6 4.4 1.2 versicolor
## 99 5.4 3.9 1.7 0.4 setosa
## 100 5.4 3.7 1.5 0.2 setosa
## 101 5.4 3.9 1.3 0.4 setosa
## 102 5.4 3.4 1.7 0.2 setosa
## 103 5.4 3.4 1.5 0.4 setosa
## 104 5.4 3 4.5 1.5 versicolor
## 105 5.3 3.7 1.5 0.2 setosa
## 106 5.2 3.5 1.5 0.2 setosa
## 107 5.2 3.4 1.4 0.2 setosa
## 108 5.2 4.1 1.5 0.1 setosa
## 109 5.2 2.7 3.9 1.4 versicolor
## 110 5.1 3.5 1.4 0.2 setosa
## 111 5.1 3.5 1.4 0.3 setosa
## 112 5.1 3.8 1.5 0.3 setosa
## 113 5.1 3.7 1.5 0.4 setosa
## 114 5.1 3.3 1.7 0.5 setosa
## 115 5.1 3.4 1.5 0.2 setosa
## 116 5.1 3.8 1.9 0.4 setosa
## 117 5.1 3.8 1.6 0.2 setosa
## 118 5.1 2.5 3 1.1 versicolor
## 119 5 3.6 1.4 0.2 setosa
## 120 5 3.4 1.5 0.2 setosa
## 121 5 3 1.6 0.2 setosa
## 122 5 3.4 1.6 0.4 setosa
## 123 5 3.2 1.2 0.2 setosa
## 124 5 3.5 1.3 0.3 setosa
## 125 5 3.5 1.6 0.6 setosa
## 126 5 3.3 1.4 0.2 setosa
## 127 5 2 3.5 1 versicolor
## 128 5 2.3 3.3 1 versicolor
## 129 4.9 3 1.4 0.2 setosa
## 130 4.9 3.1 1.5 0.1 setosa
## 131 4.9 3.1 1.5 0.2 setosa
## 132 4.9 3.6 1.4 0.1 setosa
## 133 4.9 2.4 3.3 1 versicolor
## 134 4.9 2.5 4.5 1.7 virginica
## 135 4.8 3.4 1.6 0.2 setosa
## 136 4.8 3 1.4 0.1 setosa
## 137 4.8 3.4 1.9 0.2 setosa
## 138 4.8 3.1 1.6 0.2 setosa
## 139 4.8 3 1.4 0.3 setosa
## 140 4.7 3.2 1.3 0.2 setosa
## 141 4.7 3.2 1.6 0.2 setosa
## 142 4.6 3.1 1.5 0.2 setosa
## 143 4.6 3.4 1.4 0.3 setosa
## 144 4.6 3.6 1 0.2 setosa
## 145 4.6 3.2 1.4 0.2 setosa
## 146 4.5 2.3 1.3 0.3 setosa
## 147 4.4 2.9 1.4 0.2 setosa
## 148 4.4 3 1.3 0.2 setosa
## 149 4.4 3.2 1.3 0.2 setosa
## 150 4.3 3 1.1 0.1 setosa
#Filter
iris %>% filter(Species=="Setosa")
## # A tibble: 0 × 5
## # ℹ 5 variables: Sepal.Length <dbl>, Sepal.Width <dbl>, Petal.Length <dbl>,
## # Petal.Width <dbl>, Species <fct>
iris %>% select(Petal.Width,Species,Petal.Length)
## # A tibble: 150 × 3
## Petal.Width Species Petal.Length
## <dbl> <fct> <dbl>
## 1 0.2 setosa 1.4
## 2 0.2 setosa 1.4
## 3 0.2 setosa 1.3
## 4 0.2 setosa 1.5
## 5 0.2 setosa 1.4
## 6 0.4 setosa 1.7
## 7 0.3 setosa 1.4
## 8 0.2 setosa 1.5
## 9 0.2 setosa 1.4
## 10 0.1 setosa 1.5
## # ℹ 140 more rows
iris %>% select(-Petal.Width, -Species)
## # A tibble: 150 × 3
## Sepal.Length Sepal.Width Petal.Length
## <dbl> <dbl> <dbl>
## 1 5.1 3.5 1.4
## 2 4.9 3 1.4
## 3 4.7 3.2 1.3
## 4 4.6 3.1 1.5
## 5 5 3.6 1.4
## 6 5.4 3.9 1.7
## 7 4.6 3.4 1.4
## 8 5 3.4 1.5
## 9 4.4 2.9 1.4
## 10 4.9 3.1 1.5
## # ℹ 140 more rows
#Mutate = penambahan peubah baru
iris %>% filter(Species=="Setosa")
## # A tibble: 0 × 5
## # ℹ 5 variables: Sepal.Length <dbl>, Sepal.Width <dbl>, Petal.Length <dbl>,
## # Petal.Width <dbl>, Species <fct>
irisbaru <- iris %>% select(-Species, -Petal.Width) %>% mutate(Sepal=Sepal.Length+Sepal.Width)
irisbaru %>%
print(n=150)
## # A tibble: 150 × 4
## Sepal.Length Sepal.Width Petal.Length Sepal
## <dbl> <dbl> <dbl> <dbl>
## 1 5.1 3.5 1.4 8.6
## 2 4.9 3 1.4 7.9
## 3 4.7 3.2 1.3 7.9
## 4 4.6 3.1 1.5 7.7
## 5 5 3.6 1.4 8.6
## 6 5.4 3.9 1.7 9.3
## 7 4.6 3.4 1.4 8
## 8 5 3.4 1.5 8.4
## 9 4.4 2.9 1.4 7.3
## 10 4.9 3.1 1.5 8
## 11 5.4 3.7 1.5 9.1
## 12 4.8 3.4 1.6 8.2
## 13 4.8 3 1.4 7.8
## 14 4.3 3 1.1 7.3
## 15 5.8 4 1.2 9.8
## 16 5.7 4.4 1.5 10.1
## 17 5.4 3.9 1.3 9.3
## 18 5.1 3.5 1.4 8.6
## 19 5.7 3.8 1.7 9.5
## 20 5.1 3.8 1.5 8.9
## 21 5.4 3.4 1.7 8.8
## 22 5.1 3.7 1.5 8.8
## 23 4.6 3.6 1 8.2
## 24 5.1 3.3 1.7 8.4
## 25 4.8 3.4 1.9 8.2
## 26 5 3 1.6 8
## 27 5 3.4 1.6 8.4
## 28 5.2 3.5 1.5 8.7
## 29 5.2 3.4 1.4 8.6
## 30 4.7 3.2 1.6 7.9
## 31 4.8 3.1 1.6 7.9
## 32 5.4 3.4 1.5 8.8
## 33 5.2 4.1 1.5 9.3
## 34 5.5 4.2 1.4 9.7
## 35 4.9 3.1 1.5 8
## 36 5 3.2 1.2 8.2
## 37 5.5 3.5 1.3 9
## 38 4.9 3.6 1.4 8.5
## 39 4.4 3 1.3 7.4
## 40 5.1 3.4 1.5 8.5
## 41 5 3.5 1.3 8.5
## 42 4.5 2.3 1.3 6.8
## 43 4.4 3.2 1.3 7.6
## 44 5 3.5 1.6 8.5
## 45 5.1 3.8 1.9 8.9
## 46 4.8 3 1.4 7.8
## 47 5.1 3.8 1.6 8.9
## 48 4.6 3.2 1.4 7.8
## 49 5.3 3.7 1.5 9
## 50 5 3.3 1.4 8.3
## 51 7 3.2 4.7 10.2
## 52 6.4 3.2 4.5 9.6
## 53 6.9 3.1 4.9 10
## 54 5.5 2.3 4 7.8
## 55 6.5 2.8 4.6 9.3
## 56 5.7 2.8 4.5 8.5
## 57 6.3 3.3 4.7 9.6
## 58 4.9 2.4 3.3 7.3
## 59 6.6 2.9 4.6 9.5
## 60 5.2 2.7 3.9 7.9
## 61 5 2 3.5 7
## 62 5.9 3 4.2 8.9
## 63 6 2.2 4 8.2
## 64 6.1 2.9 4.7 9
## 65 5.6 2.9 3.6 8.5
## 66 6.7 3.1 4.4 9.8
## 67 5.6 3 4.5 8.6
## 68 5.8 2.7 4.1 8.5
## 69 6.2 2.2 4.5 8.4
## 70 5.6 2.5 3.9 8.1
## 71 5.9 3.2 4.8 9.1
## 72 6.1 2.8 4 8.9
## 73 6.3 2.5 4.9 8.8
## 74 6.1 2.8 4.7 8.9
## 75 6.4 2.9 4.3 9.3
## 76 6.6 3 4.4 9.6
## 77 6.8 2.8 4.8 9.6
## 78 6.7 3 5 9.7
## 79 6 2.9 4.5 8.9
## 80 5.7 2.6 3.5 8.3
## 81 5.5 2.4 3.8 7.9
## 82 5.5 2.4 3.7 7.9
## 83 5.8 2.7 3.9 8.5
## 84 6 2.7 5.1 8.7
## 85 5.4 3 4.5 8.4
## 86 6 3.4 4.5 9.4
## 87 6.7 3.1 4.7 9.8
## 88 6.3 2.3 4.4 8.6
## 89 5.6 3 4.1 8.6
## 90 5.5 2.5 4 8
## 91 5.5 2.6 4.4 8.1
## 92 6.1 3 4.6 9.1
## 93 5.8 2.6 4 8.4
## 94 5 2.3 3.3 7.3
## 95 5.6 2.7 4.2 8.3
## 96 5.7 3 4.2 8.7
## 97 5.7 2.9 4.2 8.6
## 98 6.2 2.9 4.3 9.1
## 99 5.1 2.5 3 7.6
## 100 5.7 2.8 4.1 8.5
## 101 6.3 3.3 6 9.6
## 102 5.8 2.7 5.1 8.5
## 103 7.1 3 5.9 10.1
## 104 6.3 2.9 5.6 9.2
## 105 6.5 3 5.8 9.5
## 106 7.6 3 6.6 10.6
## 107 4.9 2.5 4.5 7.4
## 108 7.3 2.9 6.3 10.2
## 109 6.7 2.5 5.8 9.2
## 110 7.2 3.6 6.1 10.8
## 111 6.5 3.2 5.1 9.7
## 112 6.4 2.7 5.3 9.1
## 113 6.8 3 5.5 9.8
## 114 5.7 2.5 5 8.2
## 115 5.8 2.8 5.1 8.6
## 116 6.4 3.2 5.3 9.6
## 117 6.5 3 5.5 9.5
## 118 7.7 3.8 6.7 11.5
## 119 7.7 2.6 6.9 10.3
## 120 6 2.2 5 8.2
## 121 6.9 3.2 5.7 10.1
## 122 5.6 2.8 4.9 8.4
## 123 7.7 2.8 6.7 10.5
## 124 6.3 2.7 4.9 9
## 125 6.7 3.3 5.7 10
## 126 7.2 3.2 6 10.4
## 127 6.2 2.8 4.8 9
## 128 6.1 3 4.9 9.1
## 129 6.4 2.8 5.6 9.2
## 130 7.2 3 5.8 10.2
## 131 7.4 2.8 6.1 10.2
## 132 7.9 3.8 6.4 11.7
## 133 6.4 2.8 5.6 9.2
## 134 6.3 2.8 5.1 9.1
## 135 6.1 2.6 5.6 8.7
## 136 7.7 3 6.1 10.7
## 137 6.3 3.4 5.6 9.7
## 138 6.4 3.1 5.5 9.5
## 139 6 3 4.8 9
## 140 6.9 3.1 5.4 10
## 141 6.7 3.1 5.6 9.8
## 142 6.9 3.1 5.1 10
## 143 5.8 2.7 5.1 8.5
## 144 6.8 3.2 5.9 10
## 145 6.7 3.3 5.7 10
## 146 6.7 3 5.2 9.7
## 147 6.3 2.5 5 8.8
## 148 6.5 3 5.2 9.5
## 149 6.2 3.4 5.4 9.6
## 150 5.9 3 5.1 8.9