Membuat Matriks Pada R: Pada modul ini, kita akan fokus pada penggunaan fungsi matrix(). Untuk membuat matriks dengan fungsi ini, maka kita perlu menginputkan sebuah vektor kemudian ukuran dari matriks yang kita inginkan. Misal vektor [1,2,3,4] bisa dibuat menjadi matriks 2x2.
# Mendefinisikan matriks A
A <- matrix(c(1,2,3,4), #Vektor elemen matriks
2, #Jumlah baris
2) #Jumlah kolom
A
## [,1] [,2]
## [1,] 1 3
## [2,] 2 4
Z <- matrix(c(4,7,8,10,-2,6),3,2)
Z
## [,1] [,2]
## [1,] 4 10
## [2,] 7 -2
## [3,] 8 6
#Apakah A matriks
is.matrix(A)
## [1] TRUE
#Apakah A Vektor
is.vector(A)
## [1] FALSE
Untuk melakukan operasi Matriks, kita tinggal mendefinisikan matriks yang akan kita operasikan terlebih dahulu kemudian melakukan operasi layaknya kalkulator.
#Mendefinisikan matriks A
A <- matrix(c(2,3,-2,1,2,2),3,2)
print(A)
## [,1] [,2]
## [1,] 2 1
## [2,] 3 2
## [3,] -2 2
print("-----------------")
## [1] "-----------------"
#Mendefinisikan matriks B
B <- matrix(c(1,4,-2,1,2,1),3,2)
print(B)
## [,1] [,2]
## [1,] 1 1
## [2,] 4 2
## [3,] -2 1
C=A*2
C
## [,1] [,2]
## [1,] 4 2
## [2,] 6 4
## [3,] -4 4
Penjumlahan dan Pengurangan Matriks
D=A+B
D
## [,1] [,2]
## [1,] 3 2
## [2,] 7 4
## [3,] -4 3
E=A-B
E
## [,1] [,2]
## [1,] 1 0
## [2,] -1 0
## [3,] 0 1
Perkalian Matriks Ingat, untuk melakukan perkalian matriks, aturan perkalian matriks harus dipenuhi.
F <- matrix(c(2,-2,1,2,3,1),2,3)
G <- A%*%F
G
## [,1] [,2] [,3]
## [1,] 2 4 7
## [2,] 2 7 11
## [3,] -8 2 -4
Transpose Matriks
H=t(B)
H
## [,1] [,2] [,3]
## [1,] 1 4 -2
## [2,] 1 2 1
Matriks Satuan
U <-matrix(1, #Elemen satuan untuk matriks
4, #Jumlah baris
4) #Jumlah kolom
U
## [,1] [,2] [,3] [,4]
## [1,] 1 1 1 1
## [2,] 1 1 1 1
## [3,] 1 1 1 1
## [4,] 1 1 1 1
Matriks Nol
V <- matrix(0, # Elemen suatu matriks
3, # Jumlah baris
3) # jumlah Kolom
V
## [,1] [,2] [,3]
## [1,] 0 0 0
## [2,] 0 0 0
## [3,] 0 0 0
Matriks Diagonal
#Mendefinisikan matriks S
S <- matrix(c(2,3,-2,1,2,2,4,2,3),3,3)
S
## [,1] [,2] [,3]
## [1,] 2 1 4
## [2,] 3 2 2
## [3,] -2 2 3
#Mengambil elemen diagonal matriks S
D1<- diag(S)
print(D1)
## [1] 2 2 3
#Membuat matriks diagonal D1
D1 <- diag(diag(S))
D1
## [,1] [,2] [,3]
## [1,] 2 0 0
## [2,] 0 2 0
## [3,] 0 0 3
I <- diag(c(1,1,1,1))
I
## [,1] [,2] [,3] [,4]
## [1,] 1 0 0 0
## [2,] 0 1 0 0
## [3,] 0 0 1 0
## [4,] 0 0 0 1
#Mendefinisikan matriks simetri K
K <- matrix(c(2,1,5,1,3,4,5,4,-2),3,3)
print(K)
## [,1] [,2] [,3]
## [1,] 2 1 5
## [2,] 1 3 4
## [3,] 5 4 -2
#Transpose matriks K
K1 <- t(K)
print(K1)
## [,1] [,2] [,3]
## [1,] 2 1 5
## [2,] 1 3 4
## [3,] 5 4 -2
#Hasilnya adalah matriks K=KT (Simetri).
#Suatu matriks yang jika ditranspose matriksnya tidak berubah dikatakan matriks simetri
Invers Matriks
#Mendefinisikan matriks A
A <- matrix(c(4,4,-2,2,6,2,2,8,4),3,3)
print(A)
## [,1] [,2] [,3]
## [1,] 4 2 2
## [2,] 4 6 8
## [3,] -2 2 4
#Menghitung inverse matriks A
#Kode menentukan invers suatu matriks
AI <- solve(A)
print(AI)
## [,1] [,2] [,3]
## [1,] 1.0 -0.5 0.5
## [2,] -4.0 2.5 -3.0
## [3,] 2.5 -1.5 2.0
#Menunjukkan bahwa AI adalah invers dari A
print(A %*% AI) #Hasilnya matriks Identitas
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
#Mendefinisikan matriks A
A <- matrix(c(4,4,-2,2,6,2,2,8,4),3,3)
print(A)
## [,1] [,2] [,3]
## [1,] 4 2 2
## [2,] 4 6 8
## [3,] -2 2 4
#Menghitung determinan matriks A
d <- det(A)
print(d)
## [1] 8
#Mendefinisikan matriks A
A <- matrix(c(4,4,-2,2,6,2,2,8,4),3,3)
print(A)
## [,1] [,2] [,3]
## [1,] 4 2 2
## [2,] 4 6 8
## [3,] -2 2 4
#Menghitung rank matriks A
matA <- qr(A)
print(matA$rank)
## [1] 3
Jumlah Baris dan Kolom Matriks
#Mendefinisikan matriks A
A <- matrix(3,5,2)
print(A)
## [,1] [,2]
## [1,] 3 3
## [2,] 3 3
## [3,] 3 3
## [4,] 3 3
## [5,] 3 3
#Menghitung ukuran matriks A
ukuran_A<-dim(A)
print(ukuran_A)
## [1] 5 2
#Menghitung jumlah baris matriks A
baris_A<-nrow(A)
print(baris_A)
## [1] 5
#Menghitung jumlah kolom matriks A
kolom_A<-ncol(A)
print(kolom_A)
## [1] 2
Menghitung elemen Baris dan Kolom Matriks
#Mendefinisikan matriks A
A <- matrix(c(2,3,-2,1,2,2),3,2)
print(A)
## [,1] [,2]
## [1,] 2 1
## [2,] 3 2
## [3,] -2 2
#Menghitung rata-rata kolom matriks A
cm=colMeans(A)
print(cm)
## [1] 1.000000 1.666667
#Menghitung rata-rata baris matriks A
rm=rowMeans(A)
print(rm)
## [1] 1.5 2.5 0.0
#Menghitung rata-rata elemen matriks A
em=mean(A)
print(em)
## [1] 1.333333
Gabungan Horizontal
#Mendefinisikan matriks A
A <- matrix(c(2,3,-2,1,2,2),3,2)
print(A)
## [,1] [,2]
## [1,] 2 1
## [2,] 3 2
## [3,] -2 2
#Mendefinisikan matriks B
B <- matrix(c(1,3,2,1,4,2),3,2)
print(B)
## [,1] [,2]
## [1,] 1 1
## [2,] 3 4
## [3,] 2 2
#Menggabungkan matriks A dan B secara Horizontal
C <- cbind(A,B)
print(C)
## [,1] [,2] [,3] [,4]
## [1,] 2 1 1 1
## [2,] 3 2 3 4
## [3,] -2 2 2 2
Gabungan Vertikal(Appending)
#Mendefinisikan matriks A
A <- matrix(c(2,3,-2,1,2,2),3,2)
print(A)
## [,1] [,2]
## [1,] 2 1
## [2,] 3 2
## [3,] -2 2
#Mendefinisikan matriks B
B <- matrix(c(1,3,2,1,4,2),3,2)
print(B)
## [,1] [,2]
## [1,] 1 1
## [2,] 3 4
## [3,] 2 2
#Menggabungkan matriks A dan B secara Vertikal
C <- rbind(A,B)
print(C)
## [,1] [,2]
## [1,] 2 1
## [2,] 3 2
## [3,] -2 2
## [4,] 1 1
## [5,] 3 4
## [6,] 2 2