Nota: NumPy adalah pengganti Numarray untuk menggantikan NumArray. SAGE adalah pakej perisian matematik berasaskan NumPy dan beberapa alat yang disatukan, yang bertujuan menggantikan alat seperti Magma, Maple, Mathematica dan Matlab. Hari ini saya ingin mencari maklumat tentang NumPy di internet dan cuba menggunakan matriks penyesuaian NumPy, tetapi tidak dapat mencari maklumat dalam bahasa Cina, ada pengguna di forum yang meminta saya bagaimana menggunakan Python untuk melakukan penyesuaian matriks, dan tidak ada yang menjawab. Oleh itu, saya menemui dokumen rasmi NumPy, di mana terdapat satu bahagian kecil yang memperkenalkan objek matriks, jadi saya menterjemahkan bahagian itu ke dalam bahasa Cina, memberikan sumbangan kecil, masa lebih pendek, tidak dapat memeriksa kesalahan ejaan, ada masalah mohon maaf.
Jenis matriks mewarisi jenis ndarray, oleh itu mengandungi semua sifat dan kaedah data ndarray. Terdapat enam perbezaan penting antara jenis matriks dan jenis ndarray, yang menyebabkan hasil yang tidak dijangka apabila anda bertindak sebagai objek Matrix sebagai arrays.
(a) .T – kembali ke transposisi sendiri
(b) .H – kembali ke resonansi sendiri
© .I – kembalikan matriks kebalikan
(d) .A – a view of a 2-dimensional array that returns its own data (d) .A – a view of a 2-dimensional array that returns its own data (d) .A – a view of a 2-dimensional array that returns its own data (d)
Kelas Matrix adalah subkelas Python untuk ndarray, dan anda juga boleh belajar pelaksanaan ini untuk membina subkelas ndarray anda sendiri. Objek Matrix juga boleh digunakan untuk membina objek Matrix lain, senar, atau parameter lain yang boleh ditukar menjadi ndarray. Di samping itu, dalam NumPy, matriks matriks adalah nama lain untuk matriks matriks matriks.
Contoh 1: Membina matriks menggunakan rentetan senar
import numpy as np
a=np.mat('1 2 3; 4 5 3')
print (a*a.T).I
[[ 0.29239766 -0.13450292]
[-0.13450292 0.08187135]]
np.matrix([[ 1.+0.j, 5.+0.j, 10.+0.j],
[ 1.+0.j, 3.+0.j, 0.+4.j]])
np.mat( np.random.rand(3,3) ).T
np.matrix([[ 0.81541602, 0.73987459, 0.03509142],
[ 0.14767449, 0.60539483, 0.05641679],
[ 0.43257759, 0.628695 , 0.47413553]])
Matrix( data, dtype=None, copy=True ) Data yang dihantar dengan parameter data akan ditukar menjadi matriks. Jika dtype adalah None, maka jenis data akan ditentukan oleh kandungan data. Jika copy adalah True, maka data dalam data akan disalin, jika tidak, data asal akan digunakan. Mat Ia hanya nama lain untuk Matrix. Asmatrix(data, dtype=None) Mengembalikan data yang tidak disalin. Ia sama dengan matriks ((data, dtype, copy=False) ) Bmat(obj, ldict=None, gdict=None) Membina matriks dengan menggunakan string, susunan tertanam atau sebuah array. Perintah ini membolehkan anda membina matriks dari objek lain. Di antaranya, anda hanya boleh menggunakan argumen ldict dan gdict apabila obj adalah sebuah string, dua argumen yang merupakan kamus lokal dan modul. Jika anda tidak menyediakan mereka, mereka akan disediakan oleh sistem.
A=np.mat('2 2; 2 2'); B=np.mat('1 1; 1 1');
print(np.bmat('A B; B A'))
[[2 2 1 1]
[2 2 1 1]
[1 1 2 2]
[1 1 2 2]]
Dikutip dari su frank