Array Addressing Untuk Membuat dan Mengubah Matriks di MATLAB

0

Pada tutorial sebelumnya sudah dijelaskan mengenai cara membuat matriks menggunakan MATLAB. Seperti bahasa pemrograman lainnya setiap elemen matriks pada MATLAB bersifat dinamis. Ini berarti data yang tersimpan dalam memory sewaktu-waktu dapat berubah baik karena eksekusi tertentu maupun Array Addressing yang dilakukan pengguna. Pada tutorial kali ini akan dijelaskan mengenai Array Addressing untuk membuat dan mengubah matriks di MATLAB.

Baca juga: Pengertian Array di MATLAB dan Cara Membuat Array

Array Addressing adalah cara melakukan identifikasi setiap elemen matriks menggunakan MATLAB. Array Addressing dapat didefinisikan untuk satu elemen maupun untuk beberapa elemen dalam suatu eksekusi. Array addressing secara manual diperlukan ketika anda akan mendefinisikan nilai suatu elemen pada matriks yang telah ada dalam memory.

A. Dasar Array Addressing Pada Vektor dan Matriks

Misalkan didefinisikan suatu matriks  3 x 4 sebagai berikut,

2-3-1-matriks

Cara melakukan Array Addressing untuk mencari nilai suatu elemen matriks dengan menggunakan Syntax A(m,n). Misalkan anda akan mencari elemen matriks dengan index a(1,1) dan a(3,2).

» A = [1 1 2 3; 2 2 4 8; 3 7 7 8]

A =

1 1 2 3
2 2 4 8
3 7 7 8

» A(1,1)

ans =

1

» A(3,2)

ans =

7

Anda juga dapat mengubah nilai elemen matriks dengan mendefinisikan elemen matriks menggunakan Array Addressing melalui command window. Misalkan anda akan mengubah nilai elemen matriks a(1,1) menjadi 8. Sebagai berikut

>> A(1,1)= 8

A =

8 1 2 3
2 2 4 8
3 7 7 8

B. Array Addressing Menggunakan Colon (:)

Fundamental menggunakan colon dalam Array Addressing adalah indexing atau memberi index elemen-elemen pada suatu matriks atau vektor yang ada dalam memory.

Menggunakan Colon(:) pada Vektor

Misalkan diketahui suatu vektor B sebagai berikut

2-3-2-matriks

Untuk membuat vektor baru dari elemen b(1,2) sampai b(1,5) dapat dilakukan dengan menggunakan syntax Array Addressing menggunakan colon (:) sebagai berikut.

» B = [1 3 8 9 4 3]

B =

1 3 8 9 4 3

» b = B (2:5)

b =

3 8 9 4

Sehingga untuk membuat vektor baru dari vektor B anda dapat menggunakan syntax nama_vektor = vektor_utama(a:b) dengan a,b merupakan rentang index suatu vektor.

Menggunakan Colon(:) pada Matriks

Misalkan dari matriks A di bawah anda dapat menggunakan colon (:) untuk membuat matriks atau vektor baru dengan elemen-elemen dari A.

2-3-3-matriks

  • Membuat Vektor dari suatu matriks 
    Anda dapat membuat vektor baru dari suatu matriks dengan melakukan array addressing di bagian kolom maupun baris sesuai jenis vektor yang ingin anda buat . Misalkan akan dibuat vektor A1 yaitu vektor kolom kedua A dan vektor A2 yaitu vektor baris ketiga A.

    » A
    
    A =
    
    8 1 2 3
    2 2 4 8
    3 7 7 8
    
    » A1 = A(:,2)
    
    A1 =
    
    1
    2
    7
    
    » A2 = A(3,:)
    
    A2 =
    
    3 7 7 8
  • Membuat Vektor dari matriks dengan index tertentu

    Misalkan anda akan membuat suatu vektor A3 dari baris ke-3 matriks A dengan index kolom 2 sampai 4. Serta vektor A4 dari kolom ke-2 matriks A dengan index 2 sampai 3. Berikut Syntax Array Addressing yang dapat memecahkan hal persoalan tersebut.

    » A
    
    A =
    
    8 1 2 3
    2 2 4 8
    3 7 7 8
    
    » A3 = A(3,2:4)
    
    A3 =
    
    7 7 8
    
    » A4 = A(2:3,2)
    
    A4 =
    
    2
    7
  • Membuat Vektor dengan beberapa elemen yang telah didefinisikan

    Misalkan anda akan membuat vektor baru dengan elemen-elemen di awali dengan 0 dan dilanjutkan dengan elemen baris pertama matriks A. Anda dapat menggunakan Syntax berikut

    » A
    
    A =
    
    8 1 2 3
    2 2 4 8
    3 7 7 8
    
    » X = [0 A(1,:)]
    
    X =
    
    0 8 1 2 3

     

  • Membuat matriks baru dari suatu matriks

    Misalkan anda akan membuat Matriks B yang elemen-elemen dari matriks A yaitu dari a(1,2) sampai dengan a(3,4). Anda dapat menggunakan syntax array addressing berikut,

    » A
    
    A =
    
    8 1 2 3
    2 2 4 8
    3 7 7 8
    
    » B = A(1:3,2:4)
    
    B =
    
    1 2 3
    2 4 8
    7 7 8

    Sehingga dapat diketahui untuk membuat suatu vektor atau matriks dari suatu matriks dapat dilakukan dengan rumusan Syntax

    variabel_baru = A (a:b,c:d) dengan a,b rentang minimum dan maksimum baris A dan c,d adalah rentang minimum dan maksimum kolom A.

C. Menambah Elemen Pada Matriks

Anda dapat menambahkan elemen baru pada matriks baik berupa matriks maupun vektor pada suatu matriks. Jika elemen yang ditambahkan sudah ada maka elemen tersebut akan digantikan dengan elemen yang baru. Berikut beberapa cara untuk menambahkan elemen pada matriks.

  • Menambah elemen suatu vektor

    Misalkan suatu vektor didefinisikan dengan C = [1 2 3 4 5 6]. Misalkan anda akan menambahkan elemen vektor dengan index 7 sampai 12 dengan isi 6, 5, 4, 3, 2, 1. Anda dapat menggunakan syntax berikut untuk menyelesaikan permasalahan tersebut

    » C = [1:1:6]
    
    C =
    
    1 2 3 4 5 6
    
    » C (7:12)=[6:-1:1]
    
    C =
    
    1 2 3 4 5 6 6 5 4 3 2 1
  • Menambah elemen pada suatu matriks

    Misalkan suatu matriks C didefinisikan sebagai matriks berukuran 3 x 3 sebagai berikut

    2-3-4-matriks

    Misalkan anda akan menambah baris ke-4 pada matriks C dengan elemen [0 1 3]. Anda dapat menggunakan syntax berikut

    » C = [1 2 3; 4 5 6; 7 8 9]
    
    C =
    
    1 2 3
    4 5 6
    7 8 9
    
    » C(4,:)= [0 1 3]
    
    C =
    
    1 2 3
    4 5 6
    7 8 9
    0 1 3
  • Menambah elemen yang tidak sesuai dengan ukuran matriks

    Dalam MATLAB anda dapat menambahkan elemen tanpa memperhitungkan ukuran baris dan kolom matriks yang akan ditambahkan. Ketika ini terjadi elemen-elemen lainnya yang tidak ada akan didefinisikan menjadi elemen 0. Misalkan Pada Matriks C dengan ukuran 3 x 3 akan menambahkan elemen matriks dengan index C(4,4).

    » C = [1 2 3; 4 5 6; 7 8 9]
    
    C =
    
    1 2 3
    4 5 6
    7 8 9
    
    » C(4,4)= 7
    
    C =
    
    1 2 3 0
    4 5 6 0
    7 8 9 0
    0 0 0 7
  • Menghapus elemen vektor dan matriks

    Dalam dimensi satu atau vektor anda dapat menghapus elemen dengan index tertentu maupun dalam range tertentu. Sedangkan dalam dimensi 2 atau matriks anda dapat menghapus semua elemen dalam baris atau kolom sehingga ukuran matriks menjadi lebih kecil.Misalkan didefinisikan suatu vektor

    2-3-5-matriks

    Kemudian anda akan menghapus beberapa elemen dari vektor T. Anda dapat menggunakan syntax berikut

    » T = [1:1:8]
    
    T =
    
    1 2 3 4 5 6 7 8
    
    » T(1)=[]
    
    T =
    
    2 3 4 5 6 7 8
    
    » T(2:3)=[]
    
    T =
    
    2 5 6 7 8

    Misalkan suatu matriks A dengan ukuran 3 x 3.

    2-3-6-matriks

    Anda akan mengubah ukuran matriks menjadi 2 x 3 dengan menghapus baris ketiga. Anda dapat menggunakan syntax berikut.

    » A = [1 2 3; 4 5 6; 7 8 9]
    
    A =
    
    1 2 3
    4 5 6
    7 8 9
    
    » A(3,:)=[]
    
    A =
    
    1 2 3
    4 5 6

D. Fungsi lain terkait Array Addressing pada MATLAB

Terdapat banyak fungsi di MATLAB untuk melakukan eksekusi Array. Berikut fungsi-fungsi yang sering digunakan dalam komputasi matriks menggunakan MATLAB.

 Syntax  Deskripsi
 length(A)  Menampilkan panjang vektor A
» A

A =

1 2 3

» length(A)

ans =

3
 size (A)  Menampilkan ukuran matriks A
» A = [1 2 3; 4 5 6]

A =

1 2 3
4 5 6

» size(A)

ans =

2 3
 reshape(A,m,n)  Membuat matriks baru dengan ukuran m,n dengan syarat jumlah elemen yang dihasilkan harus sama
» A = [1 2 3; 4 5 6]

A =

1 2 3
4 5 6

» reshape (A,1,6)

ans =

1 4 2 5 3 6
 diag(vektor)  Melakukan transformasi vektor ke matriks diagonal
» A = [1 2 3]

A =

1 2 3

» diag(A)

ans =

1 0 0
0 2 0
0 0 3
 diag(matriks)  Membuat vektor dari elemen diagonal matriks
» A = [1 2 3; 4 5 6; 7 8 9]

A =

1 2 3
4 5 6
7 8 9

» diag(A)

ans =

1
5
9

Baca juga tutorial lainnya: Daftar Isi Tutorial MATLAB


Sekian artikel Array Addressing Untuk Membuat dan Mengubah Matriks di MATLAB. Nantikan artikel menarik lainnya dan jangan lupa share artikel ini ke kerabat anda. Terima kasih…

Ayo Berdiskusi Bersama! Belajar Lebih Indah dengan Saling Membantu :)

Tulis komentar
Masukkan nama Anda