library(tidyverse)
?tidyverse
library(datasets)
data(iris)
iris <- tibble::as.tibble(iris)
install.packages("dplyr")
library(dplyr)
class(iris)
## [1] "tbl_df" "tbl" "data.frame"
view(iris)
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) == iris$Sepal.Length %>% mean () #%>% tuh dpl yr ada di package tidyverse
## [1] TRUE
mean(iris$Sepal.Length)
## [1] 5.843333
iris$Sepal.Length %>% mean ()
## [1] 5.843333
mean(iris$Petal.Length)
## [1] 3.758
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
##menghitung rata-rata sepal length setiap species
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 sepale.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.length dari nilai terbesar
iris %>% arrange (desc(Sepal.Length))
## # 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
## # ℹ 140 more rows
#filter
iris %>% filter(Species=="setosa")
## # A tibble: 50 × 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
## 7 4.6 3.4 1.4 0.3 setosa
## 8 5 3.4 1.5 0.2 setosa
## 9 4.4 2.9 1.4 0.2 setosa
## 10 4.9 3.1 1.5 0.1 setosa
## # ℹ 40 more rows
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
iris %>% mutate(Sepal.Length=Sepal.Width)
## # A tibble: 150 × 5
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## <dbl> <dbl> <dbl> <dbl> <fct>
## 1 3.5 3.5 1.4 0.2 setosa
## 2 3 3 1.4 0.2 setosa
## 3 3.2 3.2 1.3 0.2 setosa
## 4 3.1 3.1 1.5 0.2 setosa
## 5 3.6 3.6 1.4 0.2 setosa
## 6 3.9 3.9 1.7 0.4 setosa
## 7 3.4 3.4 1.4 0.3 setosa
## 8 3.4 3.4 1.5 0.2 setosa
## 9 2.9 2.9 1.4 0.2 setosa
## 10 3.1 3.1 1.5 0.1 setosa
## # ℹ 140 more rows
irisbaru <- iris %>% select(-Species,-Petal.Width) %>% mutate(Sepal=Sepal.Length+Sepal.Width)
irisbaru
## # 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
## # ℹ 140 more rows