Numpy, pakej asas untuk pengkomputeran saintifik di Python, digunakan secara meluas untuk operasi algebra linear. Ia menyediakan objek pelbagai multidimensi, bersama-sama dengan koleksi fungsi matematik peringkat tinggi untuk beroperasi pada tatasusunan ini. Berikut adalah beberapa cara utama untuk menggunakan numpy untuk algebra linear:
np.array()
. Sebagai contoh, A = np.array([[1, 2], [3, 4]])
mencipta matriks 2x2.C = AB
atau D = A @ B
untuk pendaraban matriks (menggunakan pengendali @
)..T
, seperti A_transpose = AT
.np.dot()
mengira produk titik dua tatasusunan, manakala np.inner()
mengira produk dalaman.np.linalg.norm()
. Sebagai contoh, norm_of_vector = np.linalg.norm(vector)
.np.add()
, np.subtract()
, np.multiply()
, dan np.divide()
.Dengan memanfaatkan fungsi ini, Numpy memudahkan operasi algebra linear yang cekap dan berkuasa, menjadikannya alat penting untuk pengiraan saintifik dan analisis data.
Numpy menawarkan beberapa fungsi untuk menyelesaikan sistem persamaan linear, yang merupakan sebahagian daripada modul numpy.linalg
. Berikut adalah fungsi khusus:
Menyelesaikan Persamaan Linear: Fungsi np.linalg.solve(a, b)
menyelesaikan sistem linear a * x = b
untuk x
yang tidak diketahui. Di sini, a
mestilah matriks persegi, dan b
boleh menjadi vektor atau matriks.
<code class="python">import numpy as np a = np.array([[3, 1], [1, 2]]) b = np.array([9, 8]) x = np.linalg.solve(a, b)</code>
Menyelesaikan masalah sekurang -kurangnya: Untuk sistem yang ditentukan secara berlebihan, anda boleh menggunakan np.linalg.lstsq(a, b)
untuk mencari penyelesaian kuadrat -sekurang -kurangnya.
<code class="python">import numpy as np a = np.array([[1, 2], [4, 5], [7, 8]]) b = np.array([3, 6, 9]) x, residuals, rank, s = np.linalg.lstsq(a, b, rcond=None)</code>
Menyelesaikan linear sekurang -kurangnya dengan penguraian QR: fungsi np.linalg.lstsq()
secara dalaman menggunakan penguraian QR. Sebagai alternatif, anda boleh menggunakan np.linalg.qr()
untuk melaksanakan penguraian QR secara manual dan menyelesaikan sistem.
<code class="python">import numpy as np a = np.array([[1, 2], [4, 5], [7, 8]]) b = np.array([3, 6, 9]) q, r = np.linalg.qr(a) x = np.linalg.solve(r, qT @ b)</code>
Fungsi-fungsi ini menjadikannya mudah untuk menangani pelbagai jenis sistem linear, dari yang ditentukan dengan baik kepada masalah yang ditentukan secara overdeter.
Penguraian Eigenvalue adalah konsep utama dalam algebra linear, dan Numpy menjadikannya mudah untuk melaksanakan operasi ini menggunakan fungsi np.linalg.eig()
. Fungsi ini mengira nilai eigen dan vektor eigen matriks persegi.
Inilah cara anda boleh menggunakannya:
Melakukan penguraian eigenvalue: Gunakan np.linalg.eig(matrix)
untuk melaksanakan penguraian.
<code class="python">import numpy as np A = np.array([[1, -2], [2, -3]]) eigenvalues, eigenvectors = np.linalg.eig(A)</code>
Ini mengembalikan dua array: eigenvalues
yang mengandungi nilai eigen dan eigenvectors
yang mengandungi vektor eigen yang sepadan.
eigenvalues
mengandungi nilai eigen pada pepenjuru, manakala array eigenvectors
mengandungi vektor eigen sebagai lajur. Membina semula matriks asal: Anda boleh membina semula matriks asal menggunakan nilai eigen dan eigenvectors dengan formula A = V * D * V^-1
, di mana V
adalah matriks eigenvectors, dan D
adalah matriks pepenjuru eigenvalues.
<code class="python">import numpy as np A_reconstructed = eigenvectors @ np.diag(eigenvalues) @ np.linalg.inv(eigenvectors)</code>
Penguraian Eigenvalue adalah penting untuk pelbagai aplikasi, termasuk analisis kestabilan, persamaan pembezaan, dan pemprosesan isyarat.
Ya, Numpy menyediakan fungsi yang efisien untuk mengira penentu dan penyongsang matriks, yang penting dalam aljabar linear dan aplikasinya.
Mengira penentu: Fungsi np.linalg.det(matrix)
mengira penentu matriks persegi.
<code class="python">import numpy as np A = np.array([[1, 2], [3, 4]]) det_A = np.linalg.det(A)</code>
Ini akan mengira penentu matriks A
. Perhatikan bahawa penentu hanya ditakrifkan untuk matriks persegi.
Mengira matriks terbalik: fungsi np.linalg.inv(matrix)
mengira songsang matriks persegi.
<code class="python">import numpy as np A = np.array([[1, 2], [3, 4]]) A_inv = np.linalg.inv(A)</code>
Ini akan mengembalikan songsang matriks A
. Perhatikan bahawa matriks mestilah persegi dan tidak bersing (iaitu penentu mestilah bukan sifar) untuk mempunyai songsang.
Kedua -dua fungsi ini dioptimumkan untuk prestasi dan biasanya digunakan dalam pengkomputeran saintifik. Mereka memanfaatkan algoritma yang cekap untuk memastikan pengiraan yang tepat dan cepat, menjadikan Numpy alat yang sangat baik untuk operasi algebra linear yang melibatkan penentu dan penyongsang.
Atas ialah kandungan terperinci Bagaimana anda menggunakan Numpy untuk operasi algebra linear?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!