Universitas : UIN Maulana Malik Ibrahim Malang

Jurusan : Teknik Informatika

Pengertian Pivot Table

Pivot table adalah sebuah tabel yang berisi data rangkuman dari data dibeberapa tabel lainnya, dibuat dengan melakukan penjumlahan, menghitung rata-rata, mengurutkan data termasuk juga mengelompokkan data, sehingga dihasilkan tabel rangkuman yang lebih informatif dan mudah dibaca.

Pivot Table Inflow di Pulau Bali

library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
datainflowbali <- read_excel(path = "inflowDataBali.xlsx")
datainflowbali
## # A tibble: 4 x 11
##   Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019` `2020`
##   <chr>     <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>
## 1 Bali Nu~ 10322. 14613. 17512. 20807. 23008. 30965. 30797. 33866. 38116. 29400.
## 2 Bali      6394.  8202.  5066. 11590. 13072. 17914. 16962. 18610. 21422. 14735.
## 3 Nusa Te~  1803.  3676.  7024.  5704.  6285.  8842.  8383.  9140.  9614.  8007.
## 4 Nusa Te~  2125.  2735.  5422.  3512.  3651.  4210.  5452.  6116.  7080.  6657.

Kasus Data Inflow di Pulau Bali Sepuluh Tahun Terakhir

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()
datalongerbali <- datainflowbali %>% 
  pivot_longer(!Provinsi, names_to = "Tahun", values_to = "Kasus")
datalongerbali
## # A tibble: 40 x 3
##    Provinsi   Tahun  Kasus
##    <chr>      <chr>  <dbl>
##  1 Bali Nusra 2011  10322.
##  2 Bali Nusra 2012  14613.
##  3 Bali Nusra 2013  17512.
##  4 Bali Nusra 2014  20807.
##  5 Bali Nusra 2015  23008.
##  6 Bali Nusra 2016  30965.
##  7 Bali Nusra 2017  30797.
##  8 Bali Nusra 2018  33866.
##  9 Bali Nusra 2019  38116.
## 10 Bali Nusra 2020  29400.
## # ... with 30 more rows

Pivot Data Inflow di Pulau Bali berdasarkan Kasus

library(dplyr)
Bali <- select(datalongerbali, Provinsi, Kasus)
Bali
## # A tibble: 40 x 2
##    Provinsi    Kasus
##    <chr>       <dbl>
##  1 Bali Nusra 10322.
##  2 Bali Nusra 14613.
##  3 Bali Nusra 17512.
##  4 Bali Nusra 20807.
##  5 Bali Nusra 23008.
##  6 Bali Nusra 30965.
##  7 Bali Nusra 30797.
##  8 Bali Nusra 33866.
##  9 Bali Nusra 38116.
## 10 Bali Nusra 29400.
## # ... with 30 more rows

Kasus Data Inflow Uang Kartal di Nusa Tenggara Barat Sepuluh Tahun Terakhir

library(dplyr)
Bali2 <- datalongerbali  %>%
    filter(Provinsi == 'Nusa Tenggara Barat') %>%
    select('Provinsi', 'Tahun', 'Kasus')
Bali2
## # A tibble: 10 x 3
##    Provinsi            Tahun Kasus
##    <chr>               <chr> <dbl>
##  1 Nusa Tenggara Barat 2011  1803.
##  2 Nusa Tenggara Barat 2012  3676.
##  3 Nusa Tenggara Barat 2013  7024.
##  4 Nusa Tenggara Barat 2014  5704.
##  5 Nusa Tenggara Barat 2015  6285.
##  6 Nusa Tenggara Barat 2016  8842.
##  7 Nusa Tenggara Barat 2017  8383.
##  8 Nusa Tenggara Barat 2018  9140.
##  9 Nusa Tenggara Barat 2019  9614.
## 10 Nusa Tenggara Barat 2020  8007.

Kasus Data Inflow di Nusa Tenggara Barat Tahun 2020

Bali3 <- datalongerbali %>%
  filter(Provinsi == 'Nusa Tenggara Barat', Tahun == '2020') %>%
 select('Provinsi', 'Tahun', 'Kasus')
Bali3
## # A tibble: 1 x 3
##   Provinsi            Tahun Kasus
##   <chr>               <chr> <dbl>
## 1 Nusa Tenggara Barat 2020  8007.

Visualisasi Pivot Data Inflow di Pulau Bali berdasarkan Provinsi

ggplot(data = datalongerbali, mapping = aes(x = Tahun, y = Kasus)) +
  geom_point(col = "dark green") +
  facet_wrap( ~ Provinsi) +
  theme(axis.text.x = element_text(angle = 90))

Visualisasi Pivot Data Inflow di Pulau Bali berdasarkan Tahun

ggplot(data = datalongerbali, mapping = aes(x = Provinsi, y = Kasus)) +
  geom_point(col = "purple") +
  facet_wrap( ~ Tahun) +
  theme(axis.text.x = element_text(angle = 90))

Referensi

https://rpubs.com/suhartono-uinmaliki/868629