Universitas : UIN Maulana Malik Ibrahim Malang
Jurusan : Teknik Informatika
Linier Algebra C ’21
Pivot Table adalah ringkasan data dalam bentuk tabel interaktif agar kita dapat membuat laporan dan menganalisanya dengan melihat perbandingan, pola dan tren dalam data kita.
Pivot table dapat digunakan untuk meringkas data dalam jumlah yang besar dengan mudah ketika kita harus menganalisis data numerik dengan detail atau menemukan jawaban pertanyaan tentang data, sehingga kita bisa menemukan kesimpulan dengan cepat. Penyajian data dengan pivot table juga akan lebih cepat karena tanpa harus menggunakan bermacam-macam rumus Excel secara manual yang membingungkan.
Fungsi utama pivot table yaitu untuk melakukan analisis, kombinasi, dan perbandingan pada sejumlah data dan lalu mengeksploitasinya untuk disajikan sebagai sebuah laporan dalam bentuk tabel. Tabel-tabel Excel dalam pivot table memiliki tujuan agar sebuah data dapat disajikan secara ringkas berdasarkan beberapa parameter yang dibutuhkan dan relevan dengan data.
Bahasa pemrograman R juga bisa membuat pivot table. Berikut merupakan cara yang digunakan untuk bisa menampilkan sebuah data menjadi pivot tabel.
library(readxl)
dataoutflowbalinusra <-read_excel(path = "Outflow bali nusra.xlsx")
dataoutflowbalinusra
## # A tibble: 4 x 13
## No Provinsi `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 Bali dan~ 16424. 19421. 29399. 23391. 26728. 31941. 34160. 37260. 38680.
## 2 2 Bali 8912. 10782. 7248. 13104. 14471. 18140. 17822. 20434. 20654.
## 3 3 Nusa Ten~ 3819. 4379. 10628. 5620. 6728. 8149. 8770. 9271. 10288.
## 4 4 Nusa Ten~ 3693. 4260. 11524. 4668. 5530. 5652. 7569. 7555. 7738.
## # ... with 2 more variables: `2020` <dbl>, `2021` <dbl>
Kita bisa menggunakan package tidyverse.
library(tidyverse)
## -- 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
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
datalongerbanusra <-dataoutflowbalinusra %>%
pivot_longer(!Provinsi, names_to = "Tahun", values_to = "Kasus")
datalongerbanusra
## # A tibble: 48 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Bali dan Nusa Tenggara No 1
## 2 Bali dan Nusa Tenggara 2011 16424.
## 3 Bali dan Nusa Tenggara 2012 19421.
## 4 Bali dan Nusa Tenggara 2013 29399.
## 5 Bali dan Nusa Tenggara 2014 23391.
## 6 Bali dan Nusa Tenggara 2015 26728.
## 7 Bali dan Nusa Tenggara 2016 31941.
## 8 Bali dan Nusa Tenggara 2017 34160.
## 9 Bali dan Nusa Tenggara 2018 37260.
## 10 Bali dan Nusa Tenggara 2019 38680.
## # ... with 38 more rows
Balinusra2 <- select(datalongerbanusra, Provinsi, Kasus)
Balinusra2
## # A tibble: 48 x 2
## Provinsi Kasus
## <chr> <dbl>
## 1 Bali dan Nusa Tenggara 1
## 2 Bali dan Nusa Tenggara 16424.
## 3 Bali dan Nusa Tenggara 19421.
## 4 Bali dan Nusa Tenggara 29399.
## 5 Bali dan Nusa Tenggara 23391.
## 6 Bali dan Nusa Tenggara 26728.
## 7 Bali dan Nusa Tenggara 31941.
## 8 Bali dan Nusa Tenggara 34160.
## 9 Bali dan Nusa Tenggara 37260.
## 10 Bali dan Nusa Tenggara 38680.
## # ... with 38 more rows
library(dplyr)
balinusra3 <- datalongerbanusra %>%
filter(Provinsi == 'Bali dan Nusa Tenggara') %>%
select('Provinsi', 'Tahun', 'Kasus')
balinusra3
## # A tibble: 12 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Bali dan Nusa Tenggara No 1
## 2 Bali dan Nusa Tenggara 2011 16424.
## 3 Bali dan Nusa Tenggara 2012 19421.
## 4 Bali dan Nusa Tenggara 2013 29399.
## 5 Bali dan Nusa Tenggara 2014 23391.
## 6 Bali dan Nusa Tenggara 2015 26728.
## 7 Bali dan Nusa Tenggara 2016 31941.
## 8 Bali dan Nusa Tenggara 2017 34160.
## 9 Bali dan Nusa Tenggara 2018 37260.
## 10 Bali dan Nusa Tenggara 2019 38680.
## 11 Bali dan Nusa Tenggara 2020 31224.
## 12 Bali dan Nusa Tenggara 2021 15224.
balinusra4 <- datalongerbanusra %>%
filter(Provinsi == 'Bali dan Nusa Tenggara', Tahun == '2019') %>%
select('Provinsi', 'Tahun', 'Kasus')
balinusra4
## # A tibble: 1 x 3
## Provinsi Tahun Kasus
## <chr> <chr> <dbl>
## 1 Bali dan Nusa Tenggara 2019 38680.
ggplot(data = datalongerbanusra, mapping = aes(x = Tahun, y = Kasus))+
geom_point()+
facet_wrap( ~ Provinsi)+
theme(axis.text.x = element_text(angle = 90))
ggplot(data = datalongerbanusra, mapping = aes(x = Provinsi, y = Kasus)) +
geom_point() +
facet_wrap( ~ Tahun) +
theme(axis.text.x = element_text(angle = 90))