Pivot adalah tabel interaktif yang memungkinkan pengguna mengelompokkan dan meringkas sejumlah besar data dalam suatu format tabular dan ringkas sehingga memudahkan pembuatan laporan dan analisis. Tabel ini dapat menyortir, menghitung, dan menjumlahkan data dan tersedia di berbagai program lembar kerja (spreadsheet).
library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
dataoutflowjawa <- read_excel(path = "outflowjawa.xlsx")
dataoutflowjawa
## # A tibble: 7 x 12
## Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019` `2020`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 DKI Jak~ 1.02e5 1.36e5 1.49e5 1.52e5 1.64e5 1.71e5 1.82e5 1.88e5 1.98e5 1.64e5
## 2 Jawa 8.35e4 1.11e5 9.90e4 1.47e5 1.72e5 1.91e5 2.29e5 2.53e5 2.72e5 2.51e5
## 3 Jawa Ba~ 2.08e4 2.89e4 2.31e4 4.09e4 4.71e4 4.94e4 5.38e4 6.14e4 6.17e4 5.72e4
## 4 Jawa Te~ 2.00e4 2.85e4 2.95e4 3.91e4 4.68e4 5.37e4 6.28e4 6.94e4 7.24e4 7.23e4
## 5 Yogyaka~ 7.54e3 9.49e3 9.71e3 1.32e4 1.41e4 1.30e4 1.68e4 2.04e4 2.14e4 1.66e4
## 6 Jawa Ti~ 3.52e4 4.45e4 3.67e4 5.39e4 6.36e4 7.45e4 9.34e4 9.80e4 1.06e5 9.34e4
## 7 Banten 0 0 0 0 0 0 2.11e3 4.05e3 1.10e4 1.18e4
## # ... with 1 more variable: `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.6 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 'ggplot2' was built under R version 4.1.2
## Warning: package 'tibble' was built under R version 4.1.2
## 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()
datalongerjawa <- dataoutflowjawa %>%
pivot_longer(!Provinsi, names_to = "Tahun", values_to = "Kasus")
datalongerjawa
## # A tibble: 77 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 DKI Jakarta 2011 101604.
## 2 DKI Jakarta 2012 136467.
## 3 DKI Jakarta 2013 149241.
## 4 DKI Jakarta 2014 152276.
## 5 DKI Jakarta 2015 163750.
## 6 DKI Jakarta 2016 170614.
## 7 DKI Jakarta 2017 181553.
## 8 DKI Jakarta 2018 187820.
## 9 DKI Jakarta 2019 197818.
## 10 DKI Jakarta 2020 163779.
## # ... with 67 more rows
library(dplyr)
jawaup2 <- select(datalongerjawa, Provinsi, Kasus)
jawaup2
## # A tibble: 77 x 2
## Provinsi Kasus
## <chr> <dbl>
## 1 DKI Jakarta 101604.
## 2 DKI Jakarta 136467.
## 3 DKI Jakarta 149241.
## 4 DKI Jakarta 152276.
## 5 DKI Jakarta 163750.
## 6 DKI Jakarta 170614.
## 7 DKI Jakarta 181553.
## 8 DKI Jakarta 187820.
## 9 DKI Jakarta 197818.
## 10 DKI Jakarta 163779.
## # ... with 67 more rows
library(dplyr)
jawaup4 <- datalongerjawa %>%
filter(Provinsi == 'Banten') %>%
select('Provinsi', 'Tahun', 'Kasus')
jawaup4
## # A tibble: 11 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Banten 2011 0
## 2 Banten 2012 0
## 3 Banten 2013 0
## 4 Banten 2014 0
## 5 Banten 2015 0
## 6 Banten 2016 0
## 7 Banten 2017 2113.
## 8 Banten 2018 4047.
## 9 Banten 2019 11035.
## 10 Banten 2020 11793.
## 11 Banten 2021 8441.
jawaup5 <- datalongerjawa %>%
filter(Provinsi == 'Banten', Tahun == '2019') %>%
select('Provinsi', 'Tahun', 'Kasus')
jawaup5
## # A tibble: 1 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Banten 2019 11035.
ggplot(data = datalongerjawa, mapping = aes(x = Tahun, y = Kasus)) +
geom_point() +
facet_wrap( ~ Provinsi) +
theme(axis.text.x = element_text(angle = 90))
### Visualisasi Pivot Data Outflow Uang Kartal di Jawa Berdasarkan Tahun
ggplot(data = datalongerjawa, mapping = aes(x = Provinsi, y = Kasus)) +
geom_point() +
facet_wrap( ~ Tahun) +
theme(axis.text.x = element_text(angle = 90))