pivot table adalah ringkasan data yang dikemas dalam tabel interaktif agar memudahkan dan membantu kamu untuk membuat laporan dan menganalisisnya dengan melihat perbandingan data yang kamu miliki.
Singkatnya, gunanya pivot table adalah untuk merangkum, mengelompokkan, mengeksplorasi, mempresentasikan, menghitung, dan menganalisa data.
library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
datainflowsumatera <- read_excel(path = "inflow tahunan.xlsx")
datainflowsumatera
## # A tibble: 11 x 12
## Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Sumatera 57900. 65911. 98369. 86024. 86549. 97764. 1.04e5 1.17e5 1.34e5
## 2 Aceh 2308. 2620. 36337. 4567. 4710. 5775. 5.51e3 5.80e3 7.51e3
## 3 Sumatera Uta~ 23238. 25981. 18120. 30503. 30254. 34427. 3.56e4 4.18e4 4.71e4
## 4 Sumatera Bar~ 9385. 11192. 14056. 14103. 13309. 14078. 1.53e4 1.51e4 1.47e4
## 5 Riau 3012. 4447. 8933. 6358. 7156. 8211. 8.55e3 1.07e4 1.09e4
## 6 Kep. Riau 1426. 2236. 3378. 2563. 3218. 4317. 4.41e3 5.13e3 6.08e3
## 7 Jambi 1868. 2138. 3047. 5169. 4978. 4398. 4.40e3 5.66e3 6.49e3
## 8 Sumatera Sel~ 7820. 9126. 8647. 10038. 10797. 12752. 1.31e4 1.43e4 1.48e4
## 9 Bengkulu 1153. 1201. 2378. 3262. 2791. 2889. 3.62e3 4.15e3 5.79e3
## 10 Lampung 7690. 6969. 3474. 9448. 8160. 9373. 1.21e4 1.34e4 1.70e4
## 11 Kep. Bangka ~ 0 0 0 13.7 1177. 1544. 1.16e3 1.52e3 3.27e3
## # ... with 2 more variables: 2020 <dbl>, 2021 <dbl>
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.1.2
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.4 v dplyr 1.0.8
## v tidyr 1.2.0 v stringr 1.4.0
## v readr 2.1.2 v forcats 0.5.1
## Warning: package 'tidyr' was built under R version 4.1.2
## Warning: package 'readr' was built under R version 4.1.2
## Warning: package 'purrr' was built under R version 4.1.2
## Warning: package 'dplyr' was built under R version 4.1.2
## Warning: package 'forcats' was built under R version 4.1.2
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
datalongerSumatera <- datainflowsumatera %>%
pivot_longer(!Provinsi, names_to = "Tahun", values_to = "Kasus")
datalongerSumatera
## # A tibble: 121 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Sumatera 2011 57900.
## 2 Sumatera 2012 65911.
## 3 Sumatera 2013 98369.
## 4 Sumatera 2014 86024.
## 5 Sumatera 2015 86549.
## 6 Sumatera 2016 97764.
## 7 Sumatera 2017 103748.
## 8 Sumatera 2018 117495.
## 9 Sumatera 2019 133762.
## 10 Sumatera 2020 109345.
## # ... with 111 more rows
library(dplyr)
sumatera2 <- select(datalongerSumatera, Provinsi, Kasus)
sumatera2
## # A tibble: 121 x 2
## Provinsi Kasus
## <chr> <dbl>
## 1 Sumatera 57900.
## 2 Sumatera 65911.
## 3 Sumatera 98369.
## 4 Sumatera 86024.
## 5 Sumatera 86549.
## 6 Sumatera 97764.
## 7 Sumatera 103748.
## 8 Sumatera 117495.
## 9 Sumatera 133762.
## 10 Sumatera 109345.
## # ... with 111 more rows
library(dplyr)
sumatera3 <- datalongerSumatera %>%
filter(Provinsi == 'Riau') %>%
select('Provinsi', 'Tahun', 'Kasus')
sumatera3
## # A tibble: 11 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Riau 2011 3012.
## 2 Riau 2012 4447.
## 3 Riau 2013 8933.
## 4 Riau 2014 6358.
## 5 Riau 2015 7156.
## 6 Riau 2016 8211.
## 7 Riau 2017 8553.
## 8 Riau 2018 10730.
## 9 Riau 2019 10915.
## 10 Riau 2020 9148.
## 11 Riau 2021 7769.
sumatera4 <- datalongerSumatera %>%
filter(Provinsi == 'Riau', Tahun == '2021') %>%
select('Provinsi', 'Tahun', 'Kasus')
sumatera4
## # A tibble: 1 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Riau 2021 7769.
ggplot(data = datalongerSumatera, mapping = aes(x = Tahun, y = Kasus)) +
geom_point() +
facet_wrap( ~ Provinsi) +
theme(axis.text.x = element_text(angle = 90))
ggplot(data = datalongerSumatera, mapping = aes(x = Provinsi, y = Kasus)) +
geom_point() +
facet_wrap( ~ Tahun) +
theme(axis.text.x = element_text(angle = 90))