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 inflow 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 Inflow 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 inflow 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      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)
## -- 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 Inflow 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   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

4. Pivot Data Inflow di Pulau Sumatera Berdasarkan Kasus

library(dplyr)
sum2 <- select(datalongersum, Provinsi, Kasus)
sum2
## # 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

Kasus Data Inflow 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   2308.
##  2 Aceh     2012   2620.
##  3 Aceh     2013  36337.
##  4 Aceh     2014   4567.
##  5 Aceh     2015   4710.
##  6 Aceh     2016   5775.
##  7 Aceh     2017   5514.
##  8 Aceh     2018   5799.
##  9 Aceh     2019   7509.
## 10 Aceh     2020   6641.
## 11 Aceh     2021   3702.

Kasus Data Inflow 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  3702.

Kasus Data Inflow 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  23238.
##  2 Sumatera Utara 2012  25981.
##  3 Sumatera Utara 2013  18120.
##  4 Sumatera Utara 2014  30503.
##  5 Sumatera Utara 2015  30254.
##  6 Sumatera Utara 2016  34427.
##  7 Sumatera Utara 2017  35617.
##  8 Sumatera Utara 2018  41769.
##  9 Sumatera Utara 2019  47112.
## 10 Sumatera Utara 2020  36609.
## 11 Sumatera Utara 2021  31840.

Kasus Data Inflow 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  31840.

Kasus Data Inflow 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   9385.
##  2 Sumatera Barat 2012  11192.
##  3 Sumatera Barat 2013  14056.
##  4 Sumatera Barat 2014  14103.
##  5 Sumatera Barat 2015  13309.
##  6 Sumatera Barat 2016  14078.
##  7 Sumatera Barat 2017  15312.
##  8 Sumatera Barat 2018  15058.
##  9 Sumatera Barat 2019  14750.
## 10 Sumatera Barat 2020  10696.
## 11 Sumatera Barat 2021  10748.

Kasus Data Inflow 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  10696.

Kasus Data Inflow 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   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.

Kasus Data Inflow 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  10915.

Kasus Data Inflow 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  1426.
##  2 Kep. Riau 2012  2236.
##  3 Kep. Riau 2013  3378.
##  4 Kep. Riau 2014  2563.
##  5 Kep. Riau 2015  3218.
##  6 Kep. Riau 2016  4317.
##  7 Kep. Riau 2017  4412.
##  8 Kep. Riau 2018  5134.
##  9 Kep. Riau 2019  6077.
## 10 Kep. Riau 2020  6175.
## 11 Kep. Riau 2021  5009.

Kasus Data Inflow 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  5134.

Kasus Data Inflow 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  1868.
##  2 Jambi    2012  2138.
##  3 Jambi    2013  3047.
##  4 Jambi    2014  5169.
##  5 Jambi    2015  4978.
##  6 Jambi    2016  4398.
##  7 Jambi    2017  4404.
##  8 Jambi    2018  5657.
##  9 Jambi    2019  6486.
## 10 Jambi    2020  5628.
## 11 Jambi    2021  4980.

Kasus Data Inflow 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  4404.

Kasus Data Inflow 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   7820.
##  2 Sumatera Selatan 2012   9126.
##  3 Sumatera Selatan 2013   8647.
##  4 Sumatera Selatan 2014  10038.
##  5 Sumatera Selatan 2015  10797.
##  6 Sumatera Selatan 2016  12752.
##  7 Sumatera Selatan 2017  13075.
##  8 Sumatera Selatan 2018  14267.
##  9 Sumatera Selatan 2019  14812.
## 10 Sumatera Selatan 2020  11756.
## 11 Sumatera Selatan 2021   9106.

Kasus Data Inflow 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  12752.

Kasus Data Inflow 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  1153.
##  2 Bengkulu 2012  1201.
##  3 Bengkulu 2013  2378.
##  4 Bengkulu 2014  3262.
##  5 Bengkulu 2015  2791.
##  6 Bengkulu 2016  2889.
##  7 Bengkulu 2017  3620.
##  8 Bengkulu 2018  4150.
##  9 Bengkulu 2019  5789.
## 10 Bengkulu 2020  4971.
## 11 Bengkulu 2021  4160.

Kasus Data Inflow 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  2791.

Kasus Data Inflow 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   7690.
##  2 Lampung  2012   6969.
##  3 Lampung  2013   3474.
##  4 Lampung  2014   9448.
##  5 Lampung  2015   8160.
##  6 Lampung  2016   9373.
##  7 Lampung  2017  12078.
##  8 Lampung  2018  13415.
##  9 Lampung  2019  17046.
## 10 Lampung  2020  15158.
## 11 Lampung  2021  10697.

Kasus Data Inflow 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  9448.

Kasus Data Inflow 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    13.7
##  5 Kep. Bangka Bellitung 2015  1177. 
##  6 Kep. Bangka Bellitung 2016  1544. 
##  7 Kep. Bangka Bellitung 2017  1164. 
##  8 Kep. Bangka Bellitung 2018  1517. 
##  9 Kep. Bangka Bellitung 2019  3265. 
## 10 Kep. Bangka Bellitung 2020  2562. 
## 11 Kep. Bangka Bellitung 2021  1259.

Kasus Data Inflow 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 Inflow di Pulau Jawa Berdasarkan Provinsi

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

6. Visualisasi Pivot Data Inflow di Pulau Jawa Berdasarkan Tahun

ggplot(data = datalongersum, mapping = aes(x = Provinsi, y = Kasus)) +
  geom_point(col = "maroon") +
  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