Python Matriks: Contoh Transpose, Perkalian, Array NumPy
Apa itu Python Matriks?
A Python Matriks adalah larik data persegi panjang dua dimensi khusus yang disimpan dalam baris dan kolom. Data dalam matriks dapat berupa angka, string, ekspresi, simbol, dll. Matriks merupakan salah satu struktur data penting yang dapat digunakan dalam perhitungan matematika dan ilmiah.
Bagaimana Python Matriks berfungsi?
Data di dalam array dua dimensi dalam format matriks terlihat seperti berikut:
Langkah 1) Ini menunjukkan matriks 2x2. Matriks ini memiliki dua baris dan 2 kolom. Data di dalam matriks adalah angka. Baris1 memiliki nilai 2,3, dan baris2 memiliki nilai 4,5. Kolom, yaitu kolom1, memiliki nilai 2,4, dan kolom2 memiliki nilai 3,5.
Langkah 2) Ini menunjukkan matriks 2×3. Ini memiliki dua baris dan tiga kolom. Data di dalam baris pertama, yaitu baris1, bernilai 2,3,4, dan baris2 bernilai 5,6,7. Kolom col1 bernilai 2,5, col2 bernilai 3,6, dan col3 bernilai 4,7.
Demikian pula, Anda dapat menyimpan data Anda di dalam matriks nxn PythonBanyak operasi yang dapat dilakukan pada matriks seperti penjumlahan, pengurangan, perkalian, dan lain sebagainya.
Python tidak memiliki cara mudah untuk mengimplementasikan tipe data matriks.
Matriks python menggunakan array, dan hal yang sama dapat diimplementasikan.
- Membuat Python Matriks menggunakan tipe data daftar bersarang
- membuat Python Matriks menggunakan Array dari Python Paket numpy
membuat Python Matriks menggunakan tipe data daftar bersarang
In Python, array direpresentasikan menggunakan tipe data list. Jadi sekarang akan menggunakan list untuk membuat matriks python.
Kita akan membuat matriks 3×3, seperti gambar di bawah ini:
- Matriks mempunyai 3 baris dan 3 kolom.
- Baris pertama dalam format daftar adalah sebagai berikut: [8,14,-6]
- Baris kedua dalam daftar adalah: [12,7,4]
- Baris ketiga dalam daftar adalah: [-11,3,21]
Matriks di dalam daftar dengan semua baris dan kolomnya seperti yang ditunjukkan di bawah ini:
List = [[Row1], [Row2], [Row3] ... [RowN]]
Jadi sesuai matriks yang tercantum di atas, tipe daftar dengan data matriks adalah sebagai berikut:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
Untuk membaca data di dalamnya Python Matriks menggunakan daftar.
Kami akan menggunakan matriks yang didefinisikan di atas. Contohnya akan membaca data, mencetak matriks, menampilkan elemen terakhir dari setiap baris.
Contoh: Untuk mencetak matriks
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] #To print the matrix print(M1)
Keluaran:
The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]
Contoh 2: Untuk membaca elemen terakhir dari setiap baris
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] matrix_length = len(M1) #To read the last element from each row. for i in range(matrix_length): print(M1[i][-1])
Keluaran:
-6 4 21
Contoh 3: Untuk mencetak baris-baris pada Matriks
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] matrix_length = len(M1) #To print the rows in the Matrix for i in range(matrix_length): print(M1[i])
Keluaran:
[8, 14, -6] [12, 7, 4] [-11, 3, 21]
Menjumlahkan Matriks Menggunakan Daftar Bersarang
Kita dapat dengan mudah menjumlahkan dua matriks tertentu. Matriks di sini akan berbentuk daftar. Mari kita kerjakan sebuah contoh yang akan menjumlahkan matriks-matriks yang diberikan.
Matriks 1:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
Matriks 2 :
M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]]
Terakhir akan menginisialisasi matriks yang akan menyimpan hasil M1 + M2.
Matriks 3 :
M3 = [[0,0,0], [0,0,0], [0,0,0]]
Contoh: Penjumlahan Matriks
Untuk menjumlahkan, matriks akan menggunakan perulangan for yang akan mengulang kedua matriks yang diberikan.
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]] M3 = [[0,0,0], [0,0,0], [0,0,0]] matrix_length = len(M1) #To Add M1 and M2 matrices for i in range(len(M1)): for k in range(len(M2)): M3[i][k] = M1[i][k] + M2[i][k] #To Print the matrix print("The sum of Matrix M1 and M2 = ", M3)
Keluaran:
The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]
Perkalian Matriks menggunakan Nested List
Untuk mengalikan matriks, kita dapat menggunakan perulangan for pada kedua matriks tersebut seperti pada kode di bawah ini:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]] M3 = [[0,0,0], [0,0,0], [0,0,0]] matrix_length = len(M1) #To Multiply M1 and M2 matrices for i in range(len(M1)): for k in range(len(M2)): M3[i][k] = M1[i][k] * M2[i][k] #To Print the matrix print("The multiplication of Matrix M1 and M2 = ", M3)
Keluaran:
The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]
membuat Python Matriks menggunakan Array dari Python Paket numpy
Pustaka python Numpy membantu menangani array. Numpy memproses array sedikit lebih cepat dibandingkan dengan daftar.
Untuk bekerja dengan Numpy, Anda perlu menginstalnya terlebih dahulu. Ikuti langkah-langkah yang diberikan di bawah ini untuk menginstal Numpy.
Langkah 1) Perintah untuk menginstal Numpy adalah:
pip install NumPy
Langkah 2) Untuk menggunakan Numpy dalam kode Anda, Anda harus mengimpornya.
import NumPy
Langkah 3) Anda juga dapat mengimpor Numpy menggunakan alias, seperti yang ditunjukkan di bawah ini:
import NumPy as np
Kita akan menggunakan metode array() dari Numpy untuk membuat matriks python.
Contoh : Array di Numpy yang akan dibuat Python Matriks
import numpy as np M1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]]) print(M1)
Keluaran:
[[ 5 -10 15] [ 3 -6 9] [ -4 8 12]]
Matriks Operation menggunakan Numpy.Array()
Operasi matriks yang dapat dilakukan adalah penjumlahan, pengurangan, perkalian, transpos, pembacaan baris dan kolom matriks, pemotongan matriks, dan lain sebagainya. Pada semua contoh di atas, kita akan menggunakan metode array().
Penambahan Matriks
Untuk melakukan penjumlahan pada matriks, kita akan membuat dua matriks menggunakan numpy.array() dan menambahkannya menggunakan operator (+).
Contoh:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 + M2 print(M3)
Keluaran:
[[ 12 -12 36] [ 16 12 48] [ 6 -12 60]]
Pengurangan Matriks
Untuk melakukan pengurangan pada matriks, kita akan membuat dua matriks menggunakan numpy.array() dan menguranginya menggunakan operator (-).
Contoh:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 - M2 print(M3)
Keluaran:
[[ -6 24 -18] [ -6 -32 -18] [-20 40 -18]]
Perkalian Matriks
Pertama akan membuat dua matriks menggunakan numpy.arary(). Untuk mengalikannya, Anda dapat menggunakan metode numpy dot(). Numpy.dot() adalah perkalian titik dari matriks M1 dan M2. Numpy.dot() menangani array 2D dan melakukan perkalian matriks.
Contoh:
import numpy as np M1 = np.array([[3, 6], [5, -10]]) M2 = np.array([[9, -18], [11, 22]]) M3 = M1.dot(M2) print(M3)
Keluaran:
[[ 93 78] [ -65 -310]]
Transpos Matriks
Transpos suatu matriks dihitung dengan mengubah baris sebagai kolom dan kolom sebagai baris. Fungsi transpose() dari Numpy dapat digunakan untuk menghitung transpose suatu matriks.
Contoh:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) M2 = M1.transpose() print(M2)
Keluaran:
[[ 3 5 4] [ 6 -10 8] [ 9 15 12]]
Mengiris Matriks
Mengiris akan mengembalikan Anda elemen dari matriks berdasarkan indeks awal/akhir yang diberikan.
- Sintaks untuk mengiris adalah – [mulai:akhir]
- Jika indeks awal tidak diberikan maka dianggap 0. Misalnya [:5], artinya [0:5].
- Jika bagian akhir tidak dilewati, maka akan diambil sebagai panjang array.
- Jika awal/akhir memiliki nilai negatif, maka pemotongan akan dilakukan dari akhir array.
Sebelum kita mengerjakan pemotongan pada matriks, mari kita pahami terlebih dahulu cara menerapkan pemotongan pada array sederhana.
import numpy as np arr = np.array([2,4,6,8,10,12,14,16]) print(arr[3:6]) # will print the elements from 3 to 5 print(arr[:5]) # will print the elements from 0 to 4 print(arr[2:]) # will print the elements from 2 to length of the array. print(arr[-5:-1]) # will print from the end i.e. -5 to -2 print(arr[:-1]) # will print from end i.e. 0 to -2
Keluaran:
[ 8 10 12] [ 2 4 6 8 10] [ 6 8 10 12 14 16] [ 8 10 12 14] [ 2 4 6 8 10 12 14]
Sekarang mari kita terapkan pemotongan pada matriks. Untuk melakukan pemotongan pada matriks
sintaksnya adalah M1[row_start:row_end, col_start:col_end]
- Awal/akhir yang pertama adalah untuk baris, yaitu untuk memilih baris-baris matriks.
- Awal/akhir yang kedua adalah untuk kolom, yaitu untuk memilih kolom-kolom matriks.
Matriks M1 t yang akan kita gunakan adalah sebagai berikut:
M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]])
Total ada 4 baris. Indeks dimulai dari 0 hingga 3. Angka 0th barisnya adalah [2,4,6,8,10], 1st barisnya adalah [3,6,9,-12,-15] diikuti oleh 2nd dan 3rd.
Matriks M1 memiliki 5 kolom. Indeks dimulai dari 0 hingga 4. Angka 0th kolom memiliki nilai [2,3,4,5], 1st kolom memiliki nilai [4,6,8,-10] diikuti oleh 2nd, 3rd, 4th, dan 5th.
Berikut adalah contoh yang menunjukkan cara mendapatkan data baris dan kolom dari matriks menggunakan pemotongan. Dalam contoh ini, kita mencetak 1st dan 2nd baris, dan untuk kolom, kita menginginkan kolom pertama, kedua, dan ketiga. Untuk mendapatkan output tersebut kita telah menggunakan: M1[1:3, 1:4]
Contoh:
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[1:3, 1:4]) # For 1:3, it will give first and second row. #The columns will be taken from first to third.
Keluaran:
[[ 6 9 -12] [ 8 12 16]]
Contoh : Untuk mencetak semua baris dan kolom ketiga
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,3]) # This will print all rows and the third column data.
Keluaran:
[ 8 -12 16 -20]
Contoh: Untuk mencetak baris pertama dan semua kolom
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:1,]) # This will print first row and all columns
Keluaran:
[[ 2 4 6 8 10]]
Contoh: Untuk mencetak tiga baris pertama dan 2 kolom pertama
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:3,:2])
Keluaran:
[[2 4] [3 6] [4 8]]
Mengakses Matriks NumPy
Kita telah melihat cara kerja pemotongan. Dengan mempertimbangkan hal tersebut, kita akan membahas cara mendapatkan baris dan kolom dari matriks.
Untuk mencetak baris matriks
Pada contoh tersebut akan mencetak baris-baris matriks.
Contoh:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) print(M1[0]) #first row print(M1[1]) # the second row print(M1[-1]) # -1 will print the last row
Keluaran:
[3 6 9] [ 5 -10 15] [ 4 8 12]
Untuk mendapatkan baris terakhir, Anda bisa menggunakan indeks atau -1. Misalnya matriks mempunyai 3 baris,
jadi M1[0] akan memberi Anda baris pertama,
M1[1] akan memberi Anda baris kedua
M1[2] atau M1[-1] akan memberi Anda baris ketiga atau baris terakhir.
Untuk mencetak kolom matriks
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,0]) # Will print the first Column print(M1[:,3]) # Will print the third Column print(M1[:,-1]) # -1 will give you the last column
Keluaran:
[2 3 4 5] [ 8 -12 16 -20] [ 10 -15 -20 25]
Kesimpulan
- A Python Matriks adalah larik data persegi panjang dua dimensi khusus yang disimpan dalam baris dan kolom. Data dalam matriks dapat berupa angka, string, ekspresi, simbol, dll. Matriks merupakan salah satu struktur data penting yang dapat digunakan dalam perhitungan matematika dan ilmiah.
- Python tidak memiliki cara mudah untuk mengimplementasikan tipe data matriks. Python matriks dapat dibuat menggunakan tipe data daftar bersarang dan dengan menggunakan perpustakaan numpy.
- Pustaka python Numpy membantu menangani array. Numpy memproses array sedikit lebih cepat dibandingkan dengan daftar.
- Operasi matriks yang dapat dilakukan adalah penjumlahan, pengurangan, perkalian, transpos, pembacaan baris, kolom matriks, pengirisan matriks, dan sebagainya.
- Untuk menambahkan dua matriks, Anda dapat menggunakan numpy.array() dan menambahkannya menggunakan operator (+).
- Untuk mengalikannya, Anda dapat menggunakan metode numpy dot(). Numpy.dot() adalah perkalian titik dari matriks M1 dan M2. Numpy.dot() menangani array 2D dan melakukan perkalian matriks.
- Transpos suatu matriks dihitung dengan mengubah baris sebagai kolom dan kolom sebagai baris. Fungsi transpose() dari Numpy dapat digunakan untuk menghitung transpose suatu matriks.
- Mengiris matriks akan mengembalikan Anda elemen berdasarkan indeks awal/akhir yang diberikan.