Lembaga : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Fakultas : Sains dan Teknologi
Jurusan : Teknik Informatika
Mata Kuliah : Linier Algebra
Relasional data set merupakan kumpulan item data yang memiliki perpaduan atau hubungan yang telah ditentukan sebelumnya. Berbagai item ini diatur sebagai satu set tabel menggunakan kolom dan baris. Tabel digunakan untuk menyimpan informasi tentang objek yang ditampilkan dalam database. Tiap kolom dalam tabel memuat tipe data ekskusif , dan bidang tersebut menyimpan nilai aktual atribut. Baris dalam tabel mempresentasikan perpaduan nilai terkait berdasarkan satu objek atau entitas. Tiap baris pada tabel dapat ditandai dengan pengidentifikasi unik yang disebut kunci utama (keyword), dan baris di antara beberapa tabel dapat dibuat saling terkait menggunakan kunci asing. Berikut relasional data set antara indeks harga konsumen dengan tingkat inflansi Desember 2021 Kota-kota di Pulau Jawa dengan Nasional pada RStudio menggunakan bahasa pemrograman R.
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.6 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
## Warning: package 'tibble' was built under R version 4.1.2
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
data_IHK <-data.frame(Kota = c('DKI Jakarta', 'Bogor', 'Sukabumi',
'Bandung', 'Cirebon', 'Bekasi', 'Depok', 'Tasikmalaya', 'Cilacap', 'Purwokerto', 'Kudus', 'Surakarta', 'Semarang' , 'Tegal', 'Yogyakarta', 'Jember', 'Banyuwangi', 'Sumenep'
),
IHK = c(107.58, 109.19, 107.46, 107.43, 105.21, 109.77, 108.34, 104.81, 106.21,107.15, 106.32, 107.31, 107.49, 107.89, 108.53, 107.69, 105.69, 108.15
),
stringsAsFactors = FALSE)
data_IHK
## Kota IHK
## 1 DKI Jakarta 107.58
## 2 Bogor 109.19
## 3 Sukabumi 107.46
## 4 Bandung 107.43
## 5 Cirebon 105.21
## 6 Bekasi 109.77
## 7 Depok 108.34
## 8 Tasikmalaya 104.81
## 9 Cilacap 106.21
## 10 Purwokerto 107.15
## 11 Kudus 106.32
## 12 Surakarta 107.31
## 13 Semarang 107.49
## 14 Tegal 107.89
## 15 Yogyakarta 108.53
## 16 Jember 107.69
## 17 Banyuwangi 105.69
## 18 Sumenep 108.15
plot(data_IHK$IHK,type = "o", col= "dodgerblue")
data_Tingkat_Inflansi <-data.frame(Kota = c('DKI Jakarta', 'Bogor', 'Sukabumi',
'Bandung', 'Cirebon', 'Bekasi', 'Depok', 'Tasikmalaya', 'Cilacap', 'Purwokerto', 'Kudus', 'Surakarta', 'Semarang' , 'Tegal', 'Yogyakarta', 'Jember', 'Banyuwangi', 'Malang'
),
"Tingkat Inflasi" = c(0.45, 0.56, 0.34, 0.45, 0.54, 0.54, 0.54, 0.33, 0.82, 0.74, 0.74, 0.50, 0.60, 0.66, 0.71, 0.91, 0.72, 0.73),
stringsAsFactors = FALSE)
data_Tingkat_Inflansi
## Kota Tingkat.Inflasi
## 1 DKI Jakarta 0.45
## 2 Bogor 0.56
## 3 Sukabumi 0.34
## 4 Bandung 0.45
## 5 Cirebon 0.54
## 6 Bekasi 0.54
## 7 Depok 0.54
## 8 Tasikmalaya 0.33
## 9 Cilacap 0.82
## 10 Purwokerto 0.74
## 11 Kudus 0.74
## 12 Surakarta 0.50
## 13 Semarang 0.60
## 14 Tegal 0.66
## 15 Yogyakarta 0.71
## 16 Jember 0.91
## 17 Banyuwangi 0.72
## 18 Malang 0.73
plot(data_Tingkat_Inflansi$Tingkat.Inflasi,type = "o", col= "darkorchid")
InnerJoins <- data_IHK %>%
inner_join(data_Tingkat_Inflansi, by = "Kota")
InnerJoins
## Kota IHK Tingkat.Inflasi
## 1 DKI Jakarta 107.58 0.45
## 2 Bogor 109.19 0.56
## 3 Sukabumi 107.46 0.34
## 4 Bandung 107.43 0.45
## 5 Cirebon 105.21 0.54
## 6 Bekasi 109.77 0.54
## 7 Depok 108.34 0.54
## 8 Tasikmalaya 104.81 0.33
## 9 Cilacap 106.21 0.82
## 10 Purwokerto 107.15 0.74
## 11 Kudus 106.32 0.74
## 12 Surakarta 107.31 0.50
## 13 Semarang 107.49 0.60
## 14 Tegal 107.89 0.66
## 15 Yogyakarta 108.53 0.71
## 16 Jember 107.69 0.91
## 17 Banyuwangi 105.69 0.72
A left joint
Leftjoins <- left_join(data_IHK,data_Tingkat_Inflansi)
## Joining, by = "Kota"
Leftjoins
## Kota IHK Tingkat.Inflasi
## 1 DKI Jakarta 107.58 0.45
## 2 Bogor 109.19 0.56
## 3 Sukabumi 107.46 0.34
## 4 Bandung 107.43 0.45
## 5 Cirebon 105.21 0.54
## 6 Bekasi 109.77 0.54
## 7 Depok 108.34 0.54
## 8 Tasikmalaya 104.81 0.33
## 9 Cilacap 106.21 0.82
## 10 Purwokerto 107.15 0.74
## 11 Kudus 106.32 0.74
## 12 Surakarta 107.31 0.50
## 13 Semarang 107.49 0.60
## 14 Tegal 107.89 0.66
## 15 Yogyakarta 108.53 0.71
## 16 Jember 107.69 0.91
## 17 Banyuwangi 105.69 0.72
## 18 Sumenep 108.15 NA
A right joint
Rightjoins <- right_join(data_IHK,data_Tingkat_Inflansi)
## Joining, by = "Kota"
Rightjoins
## Kota IHK Tingkat.Inflasi
## 1 DKI Jakarta 107.58 0.45
## 2 Bogor 109.19 0.56
## 3 Sukabumi 107.46 0.34
## 4 Bandung 107.43 0.45
## 5 Cirebon 105.21 0.54
## 6 Bekasi 109.77 0.54
## 7 Depok 108.34 0.54
## 8 Tasikmalaya 104.81 0.33
## 9 Cilacap 106.21 0.82
## 10 Purwokerto 107.15 0.74
## 11 Kudus 106.32 0.74
## 12 Surakarta 107.31 0.50
## 13 Semarang 107.49 0.60
## 14 Tegal 107.89 0.66
## 15 Yogyakarta 108.53 0.71
## 16 Jember 107.69 0.91
## 17 Banyuwangi 105.69 0.72
## 18 Malang NA 0.73
A full joint
fullJoins <- full_join(data_IHK,data_Tingkat_Inflansi)
## Joining, by = "Kota"
fullJoins
## Kota IHK Tingkat.Inflasi
## 1 DKI Jakarta 107.58 0.45
## 2 Bogor 109.19 0.56
## 3 Sukabumi 107.46 0.34
## 4 Bandung 107.43 0.45
## 5 Cirebon 105.21 0.54
## 6 Bekasi 109.77 0.54
## 7 Depok 108.34 0.54
## 8 Tasikmalaya 104.81 0.33
## 9 Cilacap 106.21 0.82
## 10 Purwokerto 107.15 0.74
## 11 Kudus 106.32 0.74
## 12 Surakarta 107.31 0.50
## 13 Semarang 107.49 0.60
## 14 Tegal 107.89 0.66
## 15 Yogyakarta 108.53 0.71
## 16 Jember 107.69 0.91
## 17 Banyuwangi 105.69 0.72
## 18 Sumenep 108.15 NA
## 19 Malang NA 0.73
Kita dapat menggunakan data inner joins karena pada inner join baris yang tidak cocok keyword-nya tidak disertakan dalam hasil pada tabel gabungan. Sehingga kita dapat mengvisualisasikan gabungan data dari tabel tersebut.
plot(InnerJoins$IHK, InnerJoins$Tingkat.Inflasi,type = "o", col= "darkorange")