Nota: NumPy é o sucessor do Numarray e é usado para substituir o NumArray. SAGE é um pacote de software de matemática integrado baseado no NumPy e em várias outras ferramentas, com o objetivo de substituir ferramentas como Magma, Maple, Mathematica e Matlab. Hoje eu queria procurar algumas informações online sobre o NumPy e tentar fazer uma matriz invertida com o NumPy, mas não encontrei nenhuma informação em chinês, alguns internautas pediram no fórum para que eu faça uma matriz com o python, mas ninguém respondeu. Então eu encontrei o documento oficial do NumPy, onde há um pequeno parágrafo sobre os objetos da matriz, então eu traduzi este parágrafo para o chinês, fiz uma pequena contribuição, o tempo é curto, não há como verificar erros de ortografia, há um problema.
O tipo de matriz herda o tipo de ndarray e, portanto, contém todos os atributos e métodos de dados do ndarray. O tipo de matriz tem seis diferenças importantes do tipo de ndarray, que podem causar resultados inesperados quando você opera os objetos da matriz como arrays.
1) Os objetos da matriz podem ser criados com uma string de estilo Matlab, que é uma string separada por uma coluna de espaços e separada por um decimal.
2) Os objetos da matriz são sempre bidimensionais. Isso tem implicações profundas, como o valor de retorno de m.ravel (() é bidimensional e o valor de retorno do membro selecionado também é bidimensional, portanto o comportamento da sequência será essencialmente diferente do da matriz.
3) A multiplicação do tipo de matriz cobre a multiplicação da matriz, usando a operação de multiplicação da matriz. Quando você receber o valor de retorno da matriz, certifique-se de que você entende o significado dessas funções.
4) As operações de matrizes de tipo array também cobrem as operações de matrizes anteriores, usando matrizes de matrizes. Baseado neste fato, lembre-se de que se usar matrizes de matrizes de matrizes como parâmetros, a chamada de assanarray[...] é a mesma que acima.
5) A prioridade array_default da matriz é 10.0, portanto, uma operação que misture os objetos ndarray e matrix sempre retorna a matriz.
6) As matrizes têm várias propriedades exclusivas que facilitam o cálculo, como:
A classe matrix é uma subclasse de Python de ndarray, que você pode aprender a implementar para construir sua própria subclasse ndarray. Os objetos matrix também podem ser construídos com outros objetos matrix, palavras, strings ou outros que podem ser convertidos em parâmetros de ndarray.
Exemplo 1: Construção de matrizes usando strings
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)) Converte os dados transmitidos com o parâmetro data em matrizes. Se o dtype for None, o tipo de dados será determinado pelo conteúdo dos dados. Se o copy for True, os dados dos dados serão copiados, caso contrário, o buffer original será usado. Se o buffer não for encontrado, os dados também serão copiados. Mat O nome da matriz é apenas um pseudônimo. Asmatrix (data, dtype=None) Retorna dados que não foram copiados. Equivalente a matriz ((data, dtype, copy=False) ). Bmat (obj, ldict=None, gdict=None) Construir uma matriz usando uma string, uma sequência de ninhos ou um array. Este comando permite que você construa uma matriz a partir de outros objetos, onde os parâmetros Ldict e Gdict são usados quando obj é uma string.
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]]
Traduzido por su frank