Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mengira penentu matriks atau ndArray menggunakan numpy dalam Python?
Dalam artikel ini, kita akan belajar cara mengira penentu matriks menggunakan perpustakaan numpy dalam Python. Penentu matriks ialah nilai skalar yang boleh mewakili matriks dalam bentuk padat. Ia merupakan kuantiti yang berguna dalam algebra linear dan mempunyai banyak aplikasi dalam pelbagai bidang termasuk fizik, kejuruteraan, dan sains komputer.
Dalam artikel ini, kita akan membincangkan definisi dan sifat penentu terlebih dahulu. Kami kemudian akan belajar cara menggunakan numpy untuk mengira penentu matriks dan melihat cara ia digunakan dalam amalan melalui beberapa contoh.
Penentuan matriks ialah nilai skalar yang boleh digunakan untuk menerangkan sifat-sifat matriks dalam bentuk padat Ia sering dilambangkan dengan sama ada |A| atau det(A), dengan A ialah matriks konsep asas dalam algebra linear dan mempunyai beberapa sifat penting yang menjadikannya alat yang berkuasa dalam pengiraan matematik.
Salah satu sifat penentu yang paling ketara ialah ia sama dengan hasil darab nilai eigen matriks. Nilai eigen ialah set nilai skalar khas yang mewakili cara matriks bertindak pada vektor tertentu, dan memainkan peranan penting dalam banyak aplikasi algebra linear.
Satu lagi sifat penting penentu ialah ia sama dengan hasil darab unsur pepenjuru bagi matriks segi tiga atas atau matriks segitiga bawah. Matriks segi tiga ialah matriks dengan sifar di atas atau di bawah pepenjuru Sifat ini sangat berguna apabila mengira penentu matriks besar.
Penentu juga boleh dikira dengan mendarab jumlah unsur dalam mana-mana baris atau lajur dengan tanda yang sesuai. Sifat ini menyediakan kaedah alternatif untuk mengira penentu dan membantu apabila matriks bukan segi tiga.
Selain itu, penentu boleh dikira dengan mendarab unsur-unsur pada pepenjuru utama matriks dan membahagikan dengan penentu kofaktor, submatriks atau matriks bersebelahan. Matriks ini berasal daripada matriks asal dan mempunyai sifat unik yang membantu mengira penentu.
Untuk menggunakan numpy untuk mengira penentu matriks, kita boleh menggunakan fungsi linalg.det(). Fungsi ini menerima matriks sebagai input dan mengembalikan penentu matriks. Mari lihat contoh −
import numpy as np # create a 2x2 matrix matrix = np.array([[5, 6], [7, 8]]) # calculate the determinant of the matrix determinant = np.linalg.det(matrix) print(determinant)
<font face="Liberation Mono, Consolas, Menlo, Courier, monospace"><span style="font-size: 14px;">-2.000000000000005</span></font>
Seperti yang anda lihat, fungsi linalg.det() mengira penentu matriks dan mengembalikannya sebagai nilai skalar. Dalam kes ini, penentu matriks ialah -2.0.
Untuk mengira penentu matriks dimensi tinggi, kita boleh menggunakan fungsi linalg.det() yang sama. Mari lihat contoh −
import numpy as np # create a 3x3 singular matrix matrix = np.array([[20, 21, 22], [23, 24, 25], [26, 27, 28]]) # calculate the determinant of the matrix determinant = np.linalg.det(matrix) print(determinant)
2.131628207280298e-14
Seperti yang anda lihat, fungsi linalg.det() juga boleh digunakan untuk mengira penentu matriks dimensi tinggi. Dalam kes ini, penentu matriks ialah 0.0.
Matriks tunggal ialah matriks tanpa matriks songsang. Penentu matriks tunggal ialah 0, yang bermaksud ia tidak boleh terbalik. Mari lihat contoh −
Terjemahan bahasa Cina bagiDalam contoh di bawah, fungsi linalg.det() mengembalikan 0 untuk matriks tunggal, yang bermaksud ia tidak boleh terbalik.
import numpy as np # create a 3x3 matrix matrix = np.array([[10, 11, 12], [13, 14, 15], [16, 17, 18]]) # calculate the determinant of the matrix determinant = np.linalg.det(matrix) print(determinant)
0.0Terjemahan bahasa Cina bagi
linalg.slogdet() mengembalikan tanda matriks dan logaritma penentu. Penentu dikira menggunakan kaedah penguraian LU, yang lebih stabil dan tepat daripada kaedah yang digunakan oleh fungsi linalg.det().
Satu kelebihan menggunakan fungsi linalg.slogdet() ialah ia lebih stabil dan tepat daripada fungsi linalg.det(), terutamanya untuk matriks besar. Walau bagaimanapun, perlu diingat bahawa ia mengembalikan logaritma penentu, jadi anda perlu mengeksponenkan hasilnya untuk mendapatkan penentu sebenar
import numpy as np # create a 3x3 matrix matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # calculate the determinant of the matrix using the linalg.slogdet() function sign, determinant = np.linalg.slogdet(matrix) print(determinant)
-inf
Artikel ini mengajar kita cara menggunakan Python numpy untuk mengira penentu sesuatu matriks. Kami melihat definisi dan sifat penentu, dan cara menggunakan fungsi linalg.det() untuk mengira penentu matriks. Kami juga melihat beberapa contoh untuk melihat cara ia berfungsi dalam amalan. Kami juga mempelajari cara mengira penentu matriks menggunakan numpy dalam Python.
Penentuan ialah nilai skalar yang boleh digunakan untuk mewakili matriks dalam bentuk ringkas Ia mempunyai banyak aplikasi dalam pelbagai bidang. Untuk mengira penentu matriks menggunakan numpy, kita boleh menggunakan fungsi linalg.det(), yang menerima matriks sebagai input dan mengembalikan penentu. Sebagai alternatif, kita boleh menggunakan fungsi linalg.slogdet(), yang mengembalikan tanda dan logaritma penentu menggunakan kaedah penguraian LU. Kedua-dua fungsi memudahkan untuk mengira penentu matriks dalam Python, dan ia adalah alat yang berguna untuk bekerja dengan matriks dalam aplikasi saintifik dan kejuruteraan.
Atas ialah kandungan terperinci Bagaimana untuk mengira penentu matriks atau ndArray menggunakan numpy dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!