Universitas : UIN Maulana Malik Ibrahim Malang

Jurusan : Teknik Informatika

Linier Algebra C ’21

Pengertian Relasional Data

Seperti yang kita ketahui untuk membuat agar data kita mudah dipahami, kita memerlukan relasional data. Relasional data yaitu tabel yang terdiri atas baris dan kolom yang memudahkan pembaca untuk memahami data-data yang dibuat. Dalam bahasa pemrograman R ini, kita juga bisa membuat relasional data.

library(readxl)

Tabel Data Indeks Nama dan NIM Mahasantri Mabna Asma’ Bin Abi Bakar Kamar 7

Data <- data.frame(
  NIM = c(210501110019, 210501110020, 210605110018, 210101110028, 210104110020, 210101110029, 210106110011, 210603110011, 210401110022), 'Nama Mahasantri' = c("Nabila Aleyda", "Nazwa Nur Amani", "Salsabila Ramadanti Nuraini", "Ana Faidatul Ummah", "Ayu Rahma Fitri Prameswari Zain", "Amiliya Nur Rosyidah", "Raida Lauditta Soraya", "Dian Silva Rahmalia", "Dewi Latifatul Khusna"),
stringsAsFactors = FALSE)
Data
##            NIM                 Nama.Mahasantri
## 1 210501110019                   Nabila Aleyda
## 2 210501110020                 Nazwa Nur Amani
## 3 210605110018     Salsabila Ramadanti Nuraini
## 4 210101110028              Ana Faidatul Ummah
## 5 210104110020 Ayu Rahma Fitri Prameswari Zain
## 6 210101110029            Amiliya Nur Rosyidah
## 7 210106110011           Raida Lauditta Soraya
## 8 210603110011             Dian Silva Rahmalia
## 9 210401110022           Dewi Latifatul Khusna

Tabel Data Jenis Program Studi Masing-masing Mahasantri

DataJurusan <- data.frame (
  NIM = c(210501110019, 210501110020, 210605110018, 210101110028, 210104110020, 210101110029, 210106110011, 210603110011, 210401110022),
 Prodi = c("Manajemen", "Manajemen", "Teknik Informatika", "Pendidikan Agama Islam", "Pendidikan Bahasa Arab", "Pendidikan Agama Islam", "Manajemen Pendidikan Islam", "Kimia", "Psikologi"),
stringAsFactors = FALSE)
DataJurusan
##            NIM                      Prodi stringAsFactors
## 1 210501110019                  Manajemen           FALSE
## 2 210501110020                  Manajemen           FALSE
## 3 210605110018         Teknik Informatika           FALSE
## 4 210101110028     Pendidikan Agama Islam           FALSE
## 5 210104110020     Pendidikan Bahasa Arab           FALSE
## 6 210101110029     Pendidikan Agama Islam           FALSE
## 7 210106110011 Manajemen Pendidikan Islam           FALSE
## 8 210603110011                      Kimia           FALSE
## 9 210401110022                  Psikologi           FALSE

Tabel Data Nama Mahasantri Beserta Program Studi

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
Data1 <- merge(
  x = Data,
  y = DataJurusan,
  by = 'NIM',
  all = TRUE
)
Data1
##            NIM                 Nama.Mahasantri                      Prodi
## 1 210101110028              Ana Faidatul Ummah     Pendidikan Agama Islam
## 2 210101110029            Amiliya Nur Rosyidah     Pendidikan Agama Islam
## 3 210104110020 Ayu Rahma Fitri Prameswari Zain     Pendidikan Bahasa Arab
## 4 210106110011           Raida Lauditta Soraya Manajemen Pendidikan Islam
## 5 210401110022           Dewi Latifatul Khusna                  Psikologi
## 6 210501110019                   Nabila Aleyda                  Manajemen
## 7 210501110020                 Nazwa Nur Amani                  Manajemen
## 8 210603110011             Dian Silva Rahmalia                      Kimia
## 9 210605110018     Salsabila Ramadanti Nuraini         Teknik Informatika
##   stringAsFactors
## 1           FALSE
## 2           FALSE
## 3           FALSE
## 4           FALSE
## 5           FALSE
## 6           FALSE
## 7           FALSE
## 8           FALSE
## 9           FALSE

Tabel Data Alamat Mahasantri

DataAlamat <- data.frame(
  NIM = c(210501110019, 210501110020, 210605110018, 210101110028, 210104110020, 210101110029, 210106110011, 210603110011, 210401110022),
  Alamat = c("Bekasi", "Tanah Grogot", "Blitar", "Tuban", "Malang", "Malang", "Bekasi", "Malang", "Lampung Timur"),
stringsAsFactors = FALSE)
DataAlamat
##            NIM        Alamat
## 1 210501110019        Bekasi
## 2 210501110020  Tanah Grogot
## 3 210605110018        Blitar
## 4 210101110028         Tuban
## 5 210104110020        Malang
## 6 210101110029        Malang
## 7 210106110011        Bekasi
## 8 210603110011        Malang
## 9 210401110022 Lampung Timur

Tabel Gabungan Antara Data Nama Mahasantri, Program Studi, dan Alamat

library(dplyr)
dataNama <- merge(
  x = Data1,
  y = DataAlamat,
  by = 'NIM',
  all = TRUE
)
dataNama
##            NIM                 Nama.Mahasantri                      Prodi
## 1 210101110028              Ana Faidatul Ummah     Pendidikan Agama Islam
## 2 210101110029            Amiliya Nur Rosyidah     Pendidikan Agama Islam
## 3 210104110020 Ayu Rahma Fitri Prameswari Zain     Pendidikan Bahasa Arab
## 4 210106110011           Raida Lauditta Soraya Manajemen Pendidikan Islam
## 5 210401110022           Dewi Latifatul Khusna                  Psikologi
## 6 210501110019                   Nabila Aleyda                  Manajemen
## 7 210501110020                 Nazwa Nur Amani                  Manajemen
## 8 210603110011             Dian Silva Rahmalia                      Kimia
## 9 210605110018     Salsabila Ramadanti Nuraini         Teknik Informatika
##   stringAsFactors        Alamat
## 1           FALSE         Tuban
## 2           FALSE        Malang
## 3           FALSE        Malang
## 4           FALSE        Bekasi
## 5           FALSE Lampung Timur
## 6           FALSE        Bekasi
## 7           FALSE  Tanah Grogot
## 8           FALSE        Malang
## 9           FALSE        Blitar

Penerapan Data Set pada Inner Join

InnerJoin <- Data %>%
  inner_join(DataJurusan, by = "NIM")
InnerJoin
##            NIM                 Nama.Mahasantri                      Prodi
## 1 210501110019                   Nabila Aleyda                  Manajemen
## 2 210501110020                 Nazwa Nur Amani                  Manajemen
## 3 210605110018     Salsabila Ramadanti Nuraini         Teknik Informatika
## 4 210101110028              Ana Faidatul Ummah     Pendidikan Agama Islam
## 5 210104110020 Ayu Rahma Fitri Prameswari Zain     Pendidikan Bahasa Arab
## 6 210101110029            Amiliya Nur Rosyidah     Pendidikan Agama Islam
## 7 210106110011           Raida Lauditta Soraya Manajemen Pendidikan Islam
## 8 210603110011             Dian Silva Rahmalia                      Kimia
## 9 210401110022           Dewi Latifatul Khusna                  Psikologi
##   stringAsFactors
## 1           FALSE
## 2           FALSE
## 3           FALSE
## 4           FALSE
## 5           FALSE
## 6           FALSE
## 7           FALSE
## 8           FALSE
## 9           FALSE

Penerapan Data Set pada Outer Join

1.A left Join

leftjoin <- left_join(Data,DataJurusan)
## Joining, by = "NIM"
leftjoin
##            NIM                 Nama.Mahasantri                      Prodi
## 1 210501110019                   Nabila Aleyda                  Manajemen
## 2 210501110020                 Nazwa Nur Amani                  Manajemen
## 3 210605110018     Salsabila Ramadanti Nuraini         Teknik Informatika
## 4 210101110028              Ana Faidatul Ummah     Pendidikan Agama Islam
## 5 210104110020 Ayu Rahma Fitri Prameswari Zain     Pendidikan Bahasa Arab
## 6 210101110029            Amiliya Nur Rosyidah     Pendidikan Agama Islam
## 7 210106110011           Raida Lauditta Soraya Manajemen Pendidikan Islam
## 8 210603110011             Dian Silva Rahmalia                      Kimia
## 9 210401110022           Dewi Latifatul Khusna                  Psikologi
##   stringAsFactors
## 1           FALSE
## 2           FALSE
## 3           FALSE
## 4           FALSE
## 5           FALSE
## 6           FALSE
## 7           FALSE
## 8           FALSE
## 9           FALSE
  1. A Right Join
rightjoin <- right_join(Data
                        ,DataJurusan)
## Joining, by = "NIM"
rightjoin
##            NIM                 Nama.Mahasantri                      Prodi
## 1 210501110019                   Nabila Aleyda                  Manajemen
## 2 210501110020                 Nazwa Nur Amani                  Manajemen
## 3 210605110018     Salsabila Ramadanti Nuraini         Teknik Informatika
## 4 210101110028              Ana Faidatul Ummah     Pendidikan Agama Islam
## 5 210104110020 Ayu Rahma Fitri Prameswari Zain     Pendidikan Bahasa Arab
## 6 210101110029            Amiliya Nur Rosyidah     Pendidikan Agama Islam
## 7 210106110011           Raida Lauditta Soraya Manajemen Pendidikan Islam
## 8 210603110011             Dian Silva Rahmalia                      Kimia
## 9 210401110022           Dewi Latifatul Khusna                  Psikologi
##   stringAsFactors
## 1           FALSE
## 2           FALSE
## 3           FALSE
## 4           FALSE
## 5           FALSE
## 6           FALSE
## 7           FALSE
## 8           FALSE
## 9           FALSE
  1. A Full Join
fulljoin <- full_join(Data,DataJurusan)
## Joining, by = "NIM"
fulljoin
##            NIM                 Nama.Mahasantri                      Prodi
## 1 210501110019                   Nabila Aleyda                  Manajemen
## 2 210501110020                 Nazwa Nur Amani                  Manajemen
## 3 210605110018     Salsabila Ramadanti Nuraini         Teknik Informatika
## 4 210101110028              Ana Faidatul Ummah     Pendidikan Agama Islam
## 5 210104110020 Ayu Rahma Fitri Prameswari Zain     Pendidikan Bahasa Arab
## 6 210101110029            Amiliya Nur Rosyidah     Pendidikan Agama Islam
## 7 210106110011           Raida Lauditta Soraya Manajemen Pendidikan Islam
## 8 210603110011             Dian Silva Rahmalia                      Kimia
## 9 210401110022           Dewi Latifatul Khusna                  Psikologi
##   stringAsFactors
## 1           FALSE
## 2           FALSE
## 3           FALSE
## 4           FALSE
## 5           FALSE
## 6           FALSE
## 7           FALSE
## 8           FALSE
## 9           FALSE

Referensi

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