Python - numpy Matriz de Operações

Autora:Sonhos pequenos, Criado: 2017-01-12 12:47:58, Atualizado:

Python Numpy Operações de Matriz

Nota: NumPy é o sucessor do Numarray, 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 na internet algumas informações sobre o NumPy e tentar fazer um reverso de matriz com o NumPy, mas não encontrei nenhuma informação em chinês, alguns internautas pediram no fórum para saber como fazer um reverso de matriz com o python, e ninguém respondeu. Então eu encontrei o documento oficial do NumPy, onde há um pequeno parágrafo sobre objetos de matriz, então eu traduzi este parágrafo para o chinês, com uma pequena contribuição, o tempo é curto, não há como verificar erros de ortografia, há um problema.

  • Objeto de matriz 1.

    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).T -- Retornar ao seu próprio deslocamento

      • (b).H - Retornar ao seu próprio deslocamento de ressonância

      • ©.I -- Retornar à sua própria matriz inversa

      • (d).A -- uma visão de um conjunto de matrizes em 2D que retorna seus próprios dados (sem fazer nenhuma cópia)

        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]]
    
  • Exemplo 2: Construção de matrizes usando sequências de ninhos

    np.matrix([[  1.+0.j,   5.+0.j,  10.+0.j],
          [  1.+0.j,   3.+0.j,   0.+4.j]])
    
  • Exemplo 3: Construir uma matriz usando um conjunto

    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 matriz. 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.候会调用matrix.new(matrix, data, dtype, copy) 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


Mais.