Dosen Pengampu : Prof. Dr. Suhartono, M.Kom
Lembaga : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Fakultas : Sains dan Teknologi
Jurusan : Teknik Informatika
Kelas : (C) Linear Algebra
NIM : 210605110058
Pivot Table adalah ringkasan data yang dikemas dalam tabel interaktif agar memudahkan dan membantu kamu untuk membuat laporan dan menganalisisnya dengan melihat perbandingan data yang kamu miliki.
Singkatnya, gunanya pivot table adalah untuk merangkum, mengelompokkan, mengeksplorasi, mempresentasikan, menghitung, dan menganalisa data.
library(readxl)
InflowSumatera <- read_excel(path = "/Users/aisharadianto/Documents/College 2/(C) Linear Algebra/InflowSumatera2.xlsx")
InflowSumatera
## # A tibble: 11 × 12
## Keterangan `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Sumatera 57900. 65911. 98369. 8.60e4 86549. 97764. 1.04e5 1.17e5 1.34e5
## 2 Aceh 2308. 2620. 36337. 4.57e3 4710. 5775. 5.51e3 5.80e3 7.51e3
## 3 Sumatera Utara 23238. 25981. 18120. 3.05e4 30254. 34427. 3.56e4 4.18e4 4.71e4
## 4 Sumatera Barat 9385. 11192. 14056. 1.41e4 13309. 14078. 1.53e4 1.51e4 1.47e4
## 5 Riau 3012. 4447. 8933. 6.36e3 7156. 8211. 8.55e3 1.07e4 1.09e4
## 6 Kep. Riau 1426. 2236. 3378. 2.56e3 3218. 4317. 4.41e3 5.13e3 6.08e3
## 7 Jambi 1868. 2138. 3047. 5.17e3 4978. 4398. 4.40e3 5.66e3 6.49e3
## 8 Sumatera Sela… 7820. 9126. 8647. 1.00e4 10797. 12752. 1.31e4 1.43e4 1.48e4
## 9 Bengkulu 1153. 1201. 2378. 3.26e3 2791. 2889. 3.62e3 4.15e3 5.79e3
## 10 Lampung 7690. 6969. 3474. 9.45e3 8160. 9373. 1.21e4 1.34e4 1.70e4
## 11 Kep. Bangka B… 0 0 0 1.37e1 1177. 1544. 1.16e3 1.52e3 3.27e3
## # … with 2 more variables: `2020` <dbl>, `2021` <dbl>
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✓ ggplot2 3.3.5 ✓ purrr 0.3.4
## ✓ tibble 3.1.6 ✓ dplyr 1.0.8
## ✓ tidyr 1.2.0 ✓ stringr 1.4.0
## ✓ readr 2.1.2 ✓ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
pivot_longer() “lengthens” data, increasing the number of rows and decreasing the number of columns. The inverse transformation is pivot_wider().
dataLength <- InflowSumatera %>%
pivot_longer(!Keterangan, names_to = "Tahun", values_to = "Kasus")
dataLength
## # A tibble: 121 × 3
## Keterangan 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
Memilih variable Daerah dan Kasus
library(dplyr)
SumateraUp <- select(dataLength, Keterangan, Kasus)
SumateraUp
## # A tibble: 121 × 2
## Keterangan 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
Menyeleksi baris atau observasi berdasarkan nilai.
library(dplyr)
SumateraUp1 <- dataLength %>%
filter(Keterangan > 'Riau') %>%
select('Keterangan', 'Tahun', 'Kasus')
SumateraUp1
## # A tibble: 44 × 3
## Keterangan 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 34 more rows
SumateraUp2 <- dataLength %>%
filter(Keterangan <= 'Aceh', Tahun <= '2019') %>%
select('Keterangan', 'Tahun', 'Kasus')
SumateraUp2
## # A tibble: 9 × 3
## Keterangan 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.
pivot_wider() “widens” data, increasing the number of columns and decreasing the number of rows. The inverse transformation is pivot_longer().
SumateraID <- dataLength %>%
pivot_wider(names_from = "Tahun",
values_from = "Kasus")
SumateraID
## # A tibble: 11 × 12
## Keterangan `2011` `2012` `2013` `2014` `2015` `2016` `2017` `2018` `2019`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Sumatera 57900. 65911. 98369. 8.60e4 86549. 97764. 1.04e5 1.17e5 1.34e5
## 2 Aceh 2308. 2620. 36337. 4.57e3 4710. 5775. 5.51e3 5.80e3 7.51e3
## 3 Sumatera Utara 23238. 25981. 18120. 3.05e4 30254. 34427. 3.56e4 4.18e4 4.71e4
## 4 Sumatera Barat 9385. 11192. 14056. 1.41e4 13309. 14078. 1.53e4 1.51e4 1.47e4
## 5 Riau 3012. 4447. 8933. 6.36e3 7156. 8211. 8.55e3 1.07e4 1.09e4
## 6 Kep. Riau 1426. 2236. 3378. 2.56e3 3218. 4317. 4.41e3 5.13e3 6.08e3
## 7 Jambi 1868. 2138. 3047. 5.17e3 4978. 4398. 4.40e3 5.66e3 6.49e3
## 8 Sumatera Sela… 7820. 9126. 8647. 1.00e4 10797. 12752. 1.31e4 1.43e4 1.48e4
## 9 Bengkulu 1153. 1201. 2378. 3.26e3 2791. 2889. 3.62e3 4.15e3 5.79e3
## 10 Lampung 7690. 6969. 3474. 9.45e3 8160. 9373. 1.21e4 1.34e4 1.70e4
## 11 Kep. Bangka B… 0 0 0 1.37e1 1177. 1544. 1.16e3 1.52e3 3.27e3
## # … with 2 more variables: `2020` <dbl>, `2021` <dbl>
ggplot(data = dataLength,
mapping = aes(x = Keterangan, y = Kasus, color = Keterangan)) +
geom_jitter(alpha = 0.9)
ggplot(data = dataLength,
mapping = aes(x = Keterangan, y = Kasus, color = Keterangan)) +
geom_jitter(alpha = 0.9)
ggplot(data = dataLength, mapping = aes(x = Tahun, y = Kasus)) +
geom_point(color = "pink")
ggplot(data = dataLength,
mapping = aes(x = Keterangan, y = Kasus)) +
geom_point(color = "dark green")
ggplot(data = dataLength, mapping = aes(x = Tahun, y = Kasus)) +
geom_point(color = "dark red") +
facet_wrap( ~ Keterangan) +
theme(axis.text.x = element_text(angle = 90))
ggplot(data = dataLength, mapping = aes(x = Keterangan, y = Kasus)) +
geom_point(color = "dark blue") +
facet_wrap( ~ Tahun) +
theme(axis.text.x = element_text(angle = 90))
ggplot(data = dataLength,
mapping = aes(x = Keterangan, y = Kasus)) +
geom_boxplot(alpha = 0) + # Do not show outliers
geom_jitter(alpha = 0.7, color = "dark orange") +
theme_bw()
ggplot(data = dataLength,
mapping = aes(x = Keterangan, y = Kasus)) +
geom_boxplot(alpha = 0) + # Do not show outliers
geom_jitter(alpha = 0.7, color = "yellow") +
theme_bw()