Tutorial R
Untuk membuat matriks dalam R dapat digunakan fungsi matrix()
. Operator yang biasa digunakan dalam operasi matriks, antara lain perkalian, determinan, invers matriks, dan transpose matriks.
Suatu tabel yang tersusun dari beberapa vektor dengan \(k\) dimensi disebut sebagai array. Sedangkan matriks merupakan bentuk khusus dari array dengan dimensi 2 (\(k\) = 2). Untuk membuat matriks dalam R dapat digunakan fungsi matriks berikut:
matrix(data = NA, nrow = 1, ncol = 1)
Argumen:
nrow: | banyaknya baris |
ncol: | banyaknya kolom |
Berikut ini adalah contoh pembentukan matriks dengan R:
### membuat matriks berukuran 4 x 4
mat <- matrix(c(2,3,1,5,4,5,6,7,2,3,1,5,4,5,6,7), nrow = 4, ncol = 4)
mat
[,1] [,2] [,3] [,4]
[1,] 2 4 2 4
[2,] 3 5 3 5
[3,] 1 6 1 6
[4,] 5 7 5 7
### membuat matriks berukuran 4 x 5
mat2 <- matrix(1:20, nrow = 4, ncol = 5)
mat2
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
## Dimensi dari matriks mat2
dim(mat2)
[1] 4 5
Terdapat beberapa operator yang biasa digunakan untuk operasi matriks (dan vektor), antara lain perkalian, determinan, invers matriks, dan transpose matriks. Berikut ini adalah ringkasan dari operator-operator tersebut:
Operator | Keterangan |
---|---|
%*% | Perkalian matriks (dot product) |
det() | Determinan matriks |
solve() | Invers matriks |
t() | Transpose |
diag(x) | Elemen diagonal matriks |
Berikut ini beberapa contoh operasi matriks dalam R:
## Perkalian Skalar
A <- matrix(c(1,3,2,4,8,7), ncol=3)
A
[,1] [,2] [,3]
[1,] 1 2 8
[2,] 3 4 7
8*A
[,1] [,2] [,3]
[1,] 8 16 64
[2,] 24 32 56
## Penjumlahan dan Pengurangan Matriks
A <- matrix(c(1,3,2,4,8,7), ncol=3)
A
[,1] [,2] [,3]
[1,] 1 2 8
[2,] 3 4 7
B <- matrix(c(5,8,3,4,2,7), ncol = 3, byrow = T)
B
[,1] [,2] [,3]
[1,] 5 8 3
[2,] 4 2 7
A+B
[,1] [,2] [,3]
[1,] 6 10 11
[2,] 7 6 14
A-B
[,1] [,2] [,3]
[1,] -4 -6 5
[2,] -1 2 0
## Perkalian Matriks (Dot Product)
A1 <- matrix(c(1,3,2,2,8,9), ncol = 2)
B1 <- matrix(c(5,8,4,2), ncol = 2)
A1
[,1] [,2]
[1,] 1 2
[2,] 3 8
[3,] 2 9
B1
[,1] [,2]
[1,] 5 4
[2,] 8 2
A1 %*% B1
[,1] [,2]
[1,] 21 8
[2,] 79 28
[3,] 82 26
## Transpos Matriks
A1 <- matrix(c(1,3,2,2,8,9), ncol = 2)
A1
[,1] [,2]
[1,] 1 2
[2,] 3 8
[3,] 2 9
t(A1)
[,1] [,2] [,3]
[1,] 1 3 2
[2,] 2 8 9
## Matriks Diagonal
diag(A1)
[1] 1 8
## Determinan Matriks, harus berupa matriks bujur sangkar
B1 <- matrix(c(5,8,4,2), ncol = 2)
B1
[,1] [,2]
[1,] 5 4
[2,] 8 2
det(B1)
[1] -22
## Invers Matriks, harus berupa matriks bujur sangkar
solve(B1)
[,1] [,2]
[1,] -0.09090909 0.1818182
[2,] 0.36363636 -0.2272727
Hanya satu cara menghindari kritikan: tidak berbuat apa-apa, tidak berkata apa-apa, dan tidak menjadi apa-apa.
Elbert Hubbard