Python – opérations matricielles numpy

Créé le: 2017-01-12 12:47:58, Mis à jour le:
comments   0
hits   4036

Python – opérations matricielles numpy

Note: NumPy est le successeur de Numarray et est utilisé pour remplacer NumArray. SAGE est un logiciel mathématique basé sur NumPy et plusieurs autres outils, dont l’objectif est de remplacer Magma, Maple, Mathematica et Matlab. Aujourd’hui, j’ai cherché sur le net des informations sur NumPy et j’ai essayé d’utiliser NumPy pour inverser des matrices, mais je n’ai trouvé aucune information en chinois. Un internaute m’a demandé sur le forum comment faire une inversion de matrices en Python, et personne n’a répondu.

  • #### 1, matrice (matrice) objet

Les types de matrices héritent des types de ndarray et contiennent donc tous les attributs et méthodes de données de ndarray. Il existe six différences importantes entre les types de matrices et les types de ndarray qui peuvent entraîner des résultats inattendus lorsque vous agissez en tant qu’objets de matrices.

    1. Les objets Matrix peuvent être créés à l’aide d’une chaîne de caractères de style Matlab, c’est-à-dire une chaîne de caractères séparée par des colonnes séparées par des espaces.
    1. Les objets de la matrice sont toujours bidimensionnels. Cela a des conséquences profondes, par exemple, le retour de m.ravel () est bidimensionnel, et le retour de l’élément sélectionné est également bidimensionnel, de sorte que le comportement de la séquence est différent de celui de l’array.
    1. La multiplication de type matrice recouvre la multiplication d’array, en utilisant l’opération de multiplication de la matrice. Lorsque vous recevez la valeur de retour d’une matrice, assurez-vous que vous avez compris la signification de ces fonctions. En particulier, la fonction fonction fonctionnalité array (array) () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()
    1. L’opération d’array de type matrice recouvre également l’opération d’array précédente, qui utilise l’array d’une matrice. En fonction de ce fait, rappelez-vous que si vous utilisez l’array d’une matrice comme paramètre, vous appelez asanarray ((…) comme ci-dessus.
    1. La priorité d’array par défaut de la matrice est 10.0, donc les opérations de mélange de ndarray et d’objets de matrice retournent toujours la matrice.
    1. Les matrices possèdent plusieurs propriétés particulières qui facilitent le calcul:
    • (a) .T – retourne à sa propre transposition

    • (b) .H – retourne à sa propre transposition de résonance

    • © .I – retourne sa propre inverse

    • (d) .A – une vue d’une matrice 2D qui retourne ses propres données sans faire aucune copie)

    La classe Matrix est une sous-classe Python de ndarray. Vous pouvez également apprendre cette implémentation pour construire votre propre sous-classe ndarray. Les objets Matrix peuvent également être construits à l’aide d’autres objets Matrix, de chaînes de caractères ou d’autres paramètres qui peuvent être convertis en un ndarray.

  • Exemple 1: Construire une matrice avec une chaîne de caractères

  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]]
  • Exemple 2: Construction d’une matrice à l’aide d’une séquence imbriquée
  np.matrix([[  1.+0.j,   5.+0.j,  10.+0.j],
        [  1.+0.j,   3.+0.j,   0.+4.j]])
  • Exemple 3: Utilisation d’une matrice de construction d’array
  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 ) Si dtype est None, le type de données est déterminé par le contenu de la donnée. Si copy est True, les données de la donnée sont copiées. Sinon, la mise en cache des données d’origine est utilisée. Mat C’est juste un autre nom pour Matrix. Asmatrix(data, dtype=None) Retourne les données qui n’ont pas été copiées. C’est l’équivalent de matrix ((data, dtype, copy=False) Bmat(obj, ldict=None, gdict=None) Construire une matrice à l’aide d’une chaîne de caractères, d’une séquence encastrée ou d’un tableau. Cette commande vous permet de construire une matrice à partir d’autres objets. Les paramètres ldict et gdict sont utilisés uniquement lorsque obj est une chaîne de caractères.

  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]]

Il y a des gens qui ne sont pas d’accord avec moi.