Lembaga : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Jurusan : Teknik Informatika

1. Mengenal Pivot Table

Pivot Table berisi ringkasan data yang dikemas dalam sebuah tabel utuk membuat laporan dan menganalisanya dengan melihat perbandingan, pola, dan tren pada data. Pivot dirancang untuk mempermudah menampilkan data query dalam jumlah besar.

Pada halaman ini terdapat data outflow uang kartal beberapa provinsi di pulau Sumatera yang mana nantinya akan ditampilkan dalam bentuk pivot tabel menggunakan fungsi pivot longer(). pivot longer() merupakan tabel dataset yang akan menampilkan data yang memanjang dan kolom yang lebih sedikit. Fungsi ini biasa digunakan untuk menampilkan dataset dengan jangkauan yang luas.

2. Pivot Table Data Outflow di Pulau Sumatera

library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
datainflowsum <- read_excel(path = "C:/Users/User/Documents/SEMESTER 2/LINEAR ALGEBRA/pivot outflow sumatera.xlsx")
datainflowsum
## # 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     80092. 85235. 103288. 102338. 1.09e5 1.22e5 1.34e5 1.36e5 1.53e5
##  2 Aceh          6338.  6378.  23278.   8630. 9.64e3 1.13e4 1.18e4 1.14e4 1.31e4
##  3 Sumatera Ut~ 22176. 22495.  19235.  26391. 2.79e4 3.20e4 3.52e4 3.69e4 4.41e4
##  4 Sumatera Ba~  5300.  6434.   6511.   7060. 7.47e3 9.20e3 1.08e4 8.45e3 9.46e3
##  5 Riau         12434. 13014.  15460.  15158. 1.58e4 1.76e4 1.81e4 1.79e4 1.93e4
##  6 Kep. Riau     5819.  6966.   8747.  10122. 9.80e3 1.01e4 1.07e4 1.26e4 1.26e4
##  7 Jambi         5217.  5013.   6302.   8361. 8.32e3 7.77e3 8.43e3 8.46e3 9.20e3
##  8 Sumatera Se~ 14524. 15600.  12693.  13372. 1.35e4 1.58e4 1.70e4 1.79e4 1.91e4
##  9 Bengkulu      2561.  2959.   6490.   4583. 4.85e3 5.16e3 5.45e3 5.50e3 6.84e3
## 10 Lampung       5724.  6376.   4571.   8339. 9.95e3 1.04e4 1.34e4 1.37e4 1.56e4
## 11 Kep. Bangka~     0      0       0     322. 2.00e3 2.68e3 2.75e3 2.74e3 4.17e3
## # ... with 2 more variables: 2020 <dbl>, 2021 <dbl>
library(tidyverse)
## -- 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.7
## v tidyr   1.1.3     v stringr 1.4.0
## v readr   2.0.1     v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()

3. Kasus Data Outflow di Pulau Sumatera Selama Periode 2011-2021

datalongersum <- datainflowsum %>% 
  pivot_longer(!Provinsi, names_to = "Tahun", values_to = "Kasus")
datalongersum
## # A tibble: 121 x 3
##    Provinsi Tahun   Kasus
##    <chr>    <chr>   <dbl>
##  1 Sumatera 2011   80092.
##  2 Sumatera 2012   85235.
##  3 Sumatera 2013  103288.
##  4 Sumatera 2014  102338.
##  5 Sumatera 2015  109186.
##  6 Sumatera 2016  121992.
##  7 Sumatera 2017  133606.
##  8 Sumatera 2018  135676.
##  9 Sumatera 2019  153484.
## 10 Sumatera 2020  140589.
## # ... with 111 more rows

4. Pivot Data Outflow di Pulau Sumatera Berdasarkan Kasus

library(dplyr)
sum2 <- select(datalongersum, Provinsi, Kasus)
sum2
## # A tibble: 121 x 2
##    Provinsi   Kasus
##    <chr>      <dbl>
##  1 Sumatera  80092.
##  2 Sumatera  85235.
##  3 Sumatera 103288.
##  4 Sumatera 102338.
##  5 Sumatera 109186.
##  6 Sumatera 121992.
##  7 Sumatera 133606.
##  8 Sumatera 135676.
##  9 Sumatera 153484.
## 10 Sumatera 140589.
## # ... with 111 more rows

Kasus Data Outflow di Provinsi Aceh Periode 2011-2021

library(dplyr)
aceh <- datalongersum  %>%
    filter(Provinsi == 'Aceh') %>%
    select('Provinsi', 'Tahun', 'Kasus')
aceh
## # A tibble: 11 x 3
##    Provinsi Tahun  Kasus
##    <chr>    <chr>  <dbl>
##  1 Aceh     2011   6338.
##  2 Aceh     2012   6378.
##  3 Aceh     2013  23278.
##  4 Aceh     2014   8630.
##  5 Aceh     2015   9637.
##  6 Aceh     2016  11311.
##  7 Aceh     2017  11760.
##  8 Aceh     2018  11450.
##  9 Aceh     2019  13087.
## 10 Aceh     2020  12874.
## 11 Aceh     2021   5770.

Kasus Data Outflow di Provinsi Aceh pada Tahun 2021

aceh2 <- datalongersum %>%
  filter(Provinsi == 'Aceh', Tahun == '2021') %>%
 select('Provinsi', 'Tahun', 'Kasus')
aceh2
## # A tibble: 1 x 3
##   Provinsi Tahun Kasus
##   <chr>    <chr> <dbl>
## 1 Aceh     2021  5770.

Kasus Data Outflow di Provinsi Sumatera Utara Periode 2011-2021

library(dplyr)
sumut <- datalongersum  %>%
    filter(Provinsi == 'Sumatera Utara') %>%
    select('Provinsi', 'Tahun', 'Kasus')
sumut
## # A tibble: 11 x 3
##    Provinsi       Tahun  Kasus
##    <chr>          <chr>  <dbl>
##  1 Sumatera Utara 2011  22176.
##  2 Sumatera Utara 2012  22495.
##  3 Sumatera Utara 2013  19235.
##  4 Sumatera Utara 2014  26391.
##  5 Sumatera Utara 2015  27877.
##  6 Sumatera Utara 2016  31959.
##  7 Sumatera Utara 2017  35243.
##  8 Sumatera Utara 2018  36908.
##  9 Sumatera Utara 2019  44051.
## 10 Sumatera Utara 2020  39758.
## 11 Sumatera Utara 2021  23453.

Kasus Data Outflow di Provinsi Sumatera Utara pada Tahun 2021

sumut2 <- datalongersum %>%
  filter(Provinsi == 'Sumatera Utara', Tahun == '2021') %>%
 select('Provinsi', 'Tahun', 'Kasus')
sumut2
## # A tibble: 1 x 3
##   Provinsi       Tahun  Kasus
##   <chr>          <chr>  <dbl>
## 1 Sumatera Utara 2021  23453.

Kasus Data Outflow di Provinsi Sumatera Barat Periode 2011-2021

library(dplyr)
sumba <- datalongersum  %>%
    filter(Provinsi == 'Sumatera Barat') %>%
    select('Provinsi', 'Tahun', 'Kasus')
sumba
## # A tibble: 11 x 3
##    Provinsi       Tahun  Kasus
##    <chr>          <chr>  <dbl>
##  1 Sumatera Barat 2011   5300.
##  2 Sumatera Barat 2012   6434.
##  3 Sumatera Barat 2013   6511.
##  4 Sumatera Barat 2014   7060.
##  5 Sumatera Barat 2015   7471.
##  6 Sumatera Barat 2016   9198.
##  7 Sumatera Barat 2017  10754.
##  8 Sumatera Barat 2018   8447.
##  9 Sumatera Barat 2019   9465.
## 10 Sumatera Barat 2020   8763.
## 11 Sumatera Barat 2021   5941.

Kasus Data Outflow di Provinsi Sumatera Barat pada Tahun 2020

sumba2 <- datalongersum %>%
  filter(Provinsi == 'Sumatera Barat', Tahun == '2020') %>%
 select('Provinsi', 'Tahun', 'Kasus')
sumba2
## # A tibble: 1 x 3
##   Provinsi       Tahun Kasus
##   <chr>          <chr> <dbl>
## 1 Sumatera Barat 2020  8763.

Kasus Data Outflow di Provinsi Riau Periode 2011-2021

library(dplyr)
riau <- datalongersum  %>%
    filter(Provinsi == 'Riau') %>%
    select('Provinsi', 'Tahun', 'Kasus')
riau
## # A tibble: 11 x 3
##    Provinsi Tahun  Kasus
##    <chr>    <chr>  <dbl>
##  1 Riau     2011  12434.
##  2 Riau     2012  13014.
##  3 Riau     2013  15460.
##  4 Riau     2014  15158.
##  5 Riau     2015  15789.
##  6 Riau     2016  17645.
##  7 Riau     2017  18128.
##  8 Riau     2018  17926.
##  9 Riau     2019  19277.
## 10 Riau     2020  19139.
## 11 Riau     2021  12631.

Kasus Data Outflow di Provinsi Riau pada Tahun 2019

riau2 <- datalongersum %>%
  filter(Provinsi == 'Riau', Tahun == '2019') %>%
 select('Provinsi', 'Tahun', 'Kasus')
riau2
## # A tibble: 1 x 3
##   Provinsi Tahun  Kasus
##   <chr>    <chr>  <dbl>
## 1 Riau     2019  19277.

Kasus Data Outflow di Provinsi Kepualauan Riau Periode 2011-2021

library(dplyr)
kepriau <- datalongersum  %>%
    filter(Provinsi == 'Kep. Riau') %>%
    select('Provinsi', 'Tahun', 'Kasus')
kepriau
## # A tibble: 11 x 3
##    Provinsi  Tahun  Kasus
##    <chr>     <chr>  <dbl>
##  1 Kep. Riau 2011   5819.
##  2 Kep. Riau 2012   6966.
##  3 Kep. Riau 2013   8747.
##  4 Kep. Riau 2014  10122.
##  5 Kep. Riau 2015   9803.
##  6 Kep. Riau 2016  10068.
##  7 Kep. Riau 2017  10749.
##  8 Kep. Riau 2018  12597.
##  9 Kep. Riau 2019  12644.
## 10 Kep. Riau 2020   8461.
## 11 Kep. Riau 2021   5128.

Kasus Data Outflow di Provinsi Kepualauan Riau pada Tahun 2018

kepriau2 <- datalongersum %>%
  filter(Provinsi == 'Kep. Riau', Tahun == '2018') %>%
 select('Provinsi', 'Tahun', 'Kasus')
kepriau2
## # A tibble: 1 x 3
##   Provinsi  Tahun  Kasus
##   <chr>     <chr>  <dbl>
## 1 Kep. Riau 2018  12597.

Kasus Data Outflow di Provinsi Jambi Periode 2011-2021

library(dplyr)
jambi <- datalongersum  %>%
    filter(Provinsi == 'Jambi') %>%
    select('Provinsi', 'Tahun', 'Kasus')
jambi
## # A tibble: 11 x 3
##    Provinsi Tahun Kasus
##    <chr>    <chr> <dbl>
##  1 Jambi    2011  5217.
##  2 Jambi    2012  5013.
##  3 Jambi    2013  6302.
##  4 Jambi    2014  8361.
##  5 Jambi    2015  8325.
##  6 Jambi    2016  7774.
##  7 Jambi    2017  8434.
##  8 Jambi    2018  8459.
##  9 Jambi    2019  9204.
## 10 Jambi    2020  8950.
## 11 Jambi    2021  6046.

Kasus Data Outflow di Provinsi Jambi pada Tahun 2017

jambi2 <- datalongersum %>%
  filter(Provinsi == 'Jambi', Tahun == '2017') %>%
 select('Provinsi', 'Tahun', 'Kasus')
jambi2
## # A tibble: 1 x 3
##   Provinsi Tahun Kasus
##   <chr>    <chr> <dbl>
## 1 Jambi    2017  8434.

Kasus Data Outflow di Provinsi Sumatera Selatan Periode 2011-2021

library(dplyr)
sumse <- datalongersum  %>%
    filter(Provinsi == 'Sumatera Selatan') %>%
    select('Provinsi', 'Tahun', 'Kasus')
sumse
## # A tibble: 11 x 3
##    Provinsi         Tahun  Kasus
##    <chr>            <chr>  <dbl>
##  1 Sumatera Selatan 2011  14524.
##  2 Sumatera Selatan 2012  15600.
##  3 Sumatera Selatan 2013  12693.
##  4 Sumatera Selatan 2014  13372.
##  5 Sumatera Selatan 2015  13484.
##  6 Sumatera Selatan 2016  15756.
##  7 Sumatera Selatan 2017  16981.
##  8 Sumatera Selatan 2018  17931.
##  9 Sumatera Selatan 2019  19121.
## 10 Sumatera Selatan 2020  18309.
## 11 Sumatera Selatan 2021  11436.

Kasus Data Outflow di Provinsi Sumatera Selatan pada Tahun 2016

sumse2 <- datalongersum %>%
  filter(Provinsi == 'Sumatera Selatan', Tahun == '2016') %>%
 select('Provinsi', 'Tahun', 'Kasus')
sumse2
## # A tibble: 1 x 3
##   Provinsi         Tahun  Kasus
##   <chr>            <chr>  <dbl>
## 1 Sumatera Selatan 2016  15756.

Kasus Data Outflow di Provinsi Bengkulu Periode 2011-2021

library(dplyr)
beng <- datalongersum  %>%
    filter(Provinsi == 'Bengkulu') %>%
    select('Provinsi', 'Tahun', 'Kasus')
beng
## # A tibble: 11 x 3
##    Provinsi Tahun Kasus
##    <chr>    <chr> <dbl>
##  1 Bengkulu 2011  2561.
##  2 Bengkulu 2012  2959.
##  3 Bengkulu 2013  6490.
##  4 Bengkulu 2014  4583.
##  5 Bengkulu 2015  4852.
##  6 Bengkulu 2016  5163.
##  7 Bengkulu 2017  5447.
##  8 Bengkulu 2018  5495.
##  9 Bengkulu 2019  6842.
## 10 Bengkulu 2020  6564.
## 11 Bengkulu 2021  4681.

Kasus Data Outflow di Provinsi Bengkulu pada Tahun 2015

beng2 <- datalongersum %>%
  filter(Provinsi == 'Bengkulu', Tahun == '2015') %>%
 select('Provinsi', 'Tahun', 'Kasus')
beng2
## # A tibble: 1 x 3
##   Provinsi Tahun Kasus
##   <chr>    <chr> <dbl>
## 1 Bengkulu 2015  4852.

Kasus Data Outflow di Provinsi Lampung Periode 2011-2021

library(dplyr)
lam <- datalongersum  %>%
    filter(Provinsi == 'Lampung') %>%
    select('Provinsi', 'Tahun', 'Kasus')
lam
## # A tibble: 11 x 3
##    Provinsi Tahun  Kasus
##    <chr>    <chr>  <dbl>
##  1 Lampung  2011   5724.
##  2 Lampung  2012   6376.
##  3 Lampung  2013   4571.
##  4 Lampung  2014   8339.
##  5 Lampung  2015   9946.
##  6 Lampung  2016  10436.
##  7 Lampung  2017  13359.
##  8 Lampung  2018  13725.
##  9 Lampung  2019  15626.
## 10 Lampung  2020  13873.
## 11 Lampung  2021   8050.

Kasus Data Outflow di Provinsi Lampung pada Tahun 2014

lam2 <- datalongersum %>%
  filter(Provinsi == 'Lampung', Tahun == '2014') %>%
 select('Provinsi', 'Tahun', 'Kasus')
lam2
## # A tibble: 1 x 3
##   Provinsi Tahun Kasus
##   <chr>    <chr> <dbl>
## 1 Lampung  2014  8339.

Kasus Data Outflow di Provinsi Kepulauan Bangka Belitung Periode 2011-2021

library(dplyr)
kbb <- datalongersum  %>%
    filter(Provinsi == 'Kep. Bangka Bellitung') %>%
    select('Provinsi', 'Tahun', 'Kasus')
kbb
## # A tibble: 11 x 3
##    Provinsi              Tahun Kasus
##    <chr>                 <chr> <dbl>
##  1 Kep. Bangka Bellitung 2011     0 
##  2 Kep. Bangka Bellitung 2012     0 
##  3 Kep. Bangka Bellitung 2013     0 
##  4 Kep. Bangka Bellitung 2014   322.
##  5 Kep. Bangka Bellitung 2015  2005.
##  6 Kep. Bangka Bellitung 2016  2684.
##  7 Kep. Bangka Bellitung 2017  2750.
##  8 Kep. Bangka Bellitung 2018  2738.
##  9 Kep. Bangka Bellitung 2019  4167.
## 10 Kep. Bangka Bellitung 2020  3899.
## 11 Kep. Bangka Bellitung 2021  3493.

Kasus Data Outflow di Provinsi Kepulauan Bangka Belitung pada Tahun 2013

kbb2 <- datalongersum %>%
  filter(Provinsi == 'Kep. Bangka Bellitung', Tahun == '2013') %>%
 select('Provinsi', 'Tahun', 'Kasus')
kbb2
## # A tibble: 1 x 3
##   Provinsi              Tahun Kasus
##   <chr>                 <chr> <dbl>
## 1 Kep. Bangka Bellitung 2013      0

5. Visualisasi Pivot Data Outflow di Pulau Jawa Berdasarkan Provinsi

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

6. Visualisasi Pivot Data Outflow di Pulau Jawa Berdasarkan Tahun

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


Sumber :

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

https://www.bi.go.id/id/statistik/ekonomi-keuangan/ssp/indikator-pengedaran-uang.aspx

https://tidyr.tidyverse.org/articles/pivot.html

summary(cars)
##      speed           dist       
##  Min.   : 4.0   Min.   :  2.00  
##  1st Qu.:12.0   1st Qu.: 26.00  
##  Median :15.0   Median : 36.00  
##  Mean   :15.4   Mean   : 42.98  
##  3rd Qu.:19.0   3rd Qu.: 56.00  
##  Max.   :25.0   Max.   :120.00