Pivot adalah proses membuat rangkuman, melakukan analisa, eksplorasi, dan mempresentasikan data. Salah satu software yang menyediakan fitur Pivot adalah MSExcel. Pada MSExcel terdapat fitur PivotTable dimana biasanya merupakan laporan berbentuk tabel yang dalam waktu saat singkat mampu menampilkan ringkasan berdasarkan jumlah data besar kedalam bentuk atau orientasi berbeda dan sanggup melakukan kalkulasi dalam setiap item yang dibutuhkan. Contoh : apabila kita mempunyai data yang diunduh dari sebuah database atau dibuat sendiri dengan jumlah ratusan, ribuan, atau bahkan ratusan ribu baris data, tentunya akan sulit untuk mengolah serta mendapatkan informasi secara cepat. Informasi yang dimaksud misalnya : Menampilkan data berdasarkan kriteria atau perhitungan tertentu, membandingkan antar field (kolom) satu dengan yang lainnya, menampilkan perulangan data, hubungan perulangan data pada suatu periode dan lain sebagainya. Selain itu bahasa pemrograman R juga menyediakan fitur provitdata. Berikut penerapan pivotdata inflow Uang Kartal di Pulau Jawa pada tahun 2018 menggunakan bahasa pemrograman R.
library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
datainflowjawa <- read_excel(path = "inflowdatajawa.xlsx")
datainflowjawa
## # A tibble: 6 x 13
## Provinsi Januari Februari Maret April Mei Juni Juli Agustus September
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 DKI Jakarta 14425. 7527. 8601. 9796. 7787. 19528. 15011. 9228. 9997.
## 2 Jawa Barat 10508. 5620. 6050. 6479. 5531. 12534. 9793. 6546. 6878.
## 3 Jawa Tengah 10013. 5579. 5380. 6191. 4955. 13236. 11414. 6557. 6768.
## 4 Yogyakarta 2808. 1303. 1337. 1691. 1399. 3046. 2318. 1355. 1541.
## 5 Jawa Timur 13188. 7418. 6097. 7509. 6442. 15186. 12619. 8495. 7821.
## 6 Banten 506. 270. 318. 358. 178. 829. 698. 449. 420.
## # ... with 3 more variables: Oktober <dbl>, November <dbl>, Desember <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.7
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 2.0.1 v forcats 0.5.1
## Warning: package 'tibble' was built under R version 4.1.2
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
datalongerJawa <- datainflowjawa %>%
pivot_longer(!Provinsi, names_to = "Bulan", values_to = "Kasus")
datalongerJawa
## # A tibble: 72 x 3
## Provinsi Bulan Kasus
## <chr> <chr> <dbl>
## 1 DKI Jakarta Januari 14425.
## 2 DKI Jakarta Februari 7527.
## 3 DKI Jakarta Maret 8601.
## 4 DKI Jakarta April 9796.
## 5 DKI Jakarta Mei 7787.
## 6 DKI Jakarta Juni 19528.
## 7 DKI Jakarta Juli 15011.
## 8 DKI Jakarta Agustus 9228.
## 9 DKI Jakarta September 9997.
## 10 DKI Jakarta Oktober 10160.
## # ... with 62 more rows
library(dplyr)
Jawa2 <- select(datalongerJawa, Provinsi, Kasus)
Jawa2
## # A tibble: 72 x 2
## Provinsi Kasus
## <chr> <dbl>
## 1 DKI Jakarta 14425.
## 2 DKI Jakarta 7527.
## 3 DKI Jakarta 8601.
## 4 DKI Jakarta 9796.
## 5 DKI Jakarta 7787.
## 6 DKI Jakarta 19528.
## 7 DKI Jakarta 15011.
## 8 DKI Jakarta 9228.
## 9 DKI Jakarta 9997.
## 10 DKI Jakarta 10160.
## # ... with 62 more rows
library(dplyr)
JawaTimurup4 <- datalongerJawa %>%
filter(Provinsi == 'Jawa Timur') %>%
select('Provinsi', 'Bulan', 'Kasus')
JawaTimurup4
## # A tibble: 12 x 3
## Provinsi Bulan Kasus
## <chr> <chr> <dbl>
## 1 Jawa Timur Januari 13188.
## 2 Jawa Timur Februari 7418.
## 3 Jawa Timur Maret 6097.
## 4 Jawa Timur April 7509.
## 5 Jawa Timur Mei 6442.
## 6 Jawa Timur Juni 15186.
## 7 Jawa Timur Juli 12619.
## 8 Jawa Timur Agustus 8495.
## 9 Jawa Timur September 7821.
## 10 Jawa Timur Oktober 8462.
## 11 Jawa Timur November 7774.
## 12 Jawa Timur Desember 5423.
JawaTimurup5 <- datalongerJawa %>%
filter(Provinsi == 'Jawa Timur', Bulan == 'Maret') %>%
select('Provinsi', 'Bulan', 'Kasus')
JawaTimurup5
## # A tibble: 1 x 3
## Provinsi Bulan Kasus
## <chr> <chr> <dbl>
## 1 Jawa Timur Maret 6097.
ggplot(data = datalongerJawa, mapping = aes(x = Bulan, y = Kasus)) +
geom_point() +
facet_wrap( ~ Provinsi) +
theme(axis.text.x = element_text(angle = 90))
ggplot(data = datalongerJawa, mapping = aes(x = Provinsi, y = Kasus)) +
geom_point() +
facet_wrap( ~ Bulan) +
theme(axis.text.x = element_text(angle = 90))