SciPy - Fonctionnalité de base

Par défaut, toutes les fonctions NumPy sont disponibles via l'espace de noms SciPy. Il n'est pas nécessaire d'importer explicitement les fonctions NumPy lorsque SciPy est importé. L'objet principal de NumPy est le tableau multidimensionnel homogène. C'est une table d'éléments (généralement des nombres), tous du même type, indexés par un tuple d'entiers positifs. Dans NumPy, les dimensions sont appelées comme des axes. Le nombre deaxes s'appelle comme rank.

Maintenant, révisons la fonctionnalité de base des vecteurs et des matrices dans NumPy. Comme SciPy est construit sur des tableaux NumPy, la compréhension des bases de NumPy est nécessaire. Comme la plupart des parties de l'algèbre linéaire ne traitent que des matrices.

Vecteur NumPy

Un vecteur peut être créé de plusieurs manières. Certains d'entre eux sont décrits ci-dessous.

Conversion d'objets de type tableau Python en NumPy

Prenons l'exemple suivant.

import numpy as np
list = [1,2,3,4]
arr = np.array(list)
print arr

La sortie du programme ci-dessus sera la suivante.

[1 2 3 4]

Création de tableau NumPy intrinsèque

NumPy a des fonctions intégrées pour créer des tableaux à partir de zéro. Certaines de ces fonctions sont expliquées ci-dessous.

Utiliser des zéros ()

La fonction zéros (forme) créera un tableau rempli de valeurs 0 avec la forme spécifiée. Le dtype par défaut est float64. Prenons l'exemple suivant.

import numpy as np
print np.zeros((2, 3))

La sortie du programme ci-dessus sera la suivante.

array([[ 0., 0., 0.],
[ 0., 0., 0.]])

Utiliser des uns ()

La fonction ones (forme) créera un tableau rempli de 1 valeurs. Il est identique aux zéros à tous les autres égards. Prenons l'exemple suivant.

import numpy as np
print np.ones((2, 3))

La sortie du programme ci-dessus sera la suivante.

array([[ 1., 1., 1.],
[ 1., 1., 1.]])

Utiliser arange ()

La fonction arange () créera des tableaux avec des valeurs régulièrement incrémentées. Prenons l'exemple suivant.

import numpy as np
print np.arange(7)

Le programme ci-dessus générera la sortie suivante.

array([0, 1, 2, 3, 4, 5, 6])

Définition du type de données des valeurs

Prenons l'exemple suivant.

import numpy as np
arr = np.arange(2, 10, dtype = np.float)
print arr
print "Array Data Type :",arr.dtype

Le programme ci-dessus générera la sortie suivante.

[ 2. 3. 4. 5. 6. 7. 8. 9.]
Array Data Type : float64

Utilisation de linspace ()

La fonction linspace () créera des tableaux avec un nombre spécifié d'éléments, qui seront espacés de manière égale entre les valeurs de début et de fin spécifiées. Prenons l'exemple suivant.

import numpy as np
print np.linspace(1., 4., 6)

Le programme ci-dessus générera la sortie suivante.

array([ 1. , 1.6, 2.2, 2.8, 3.4, 4. ])

Matrice

Une matrice est un tableau 2-D spécialisé qui conserve sa nature 2-D grâce à des opérations. Il a certains opérateurs spéciaux, tels que * (multiplication de matrice) et ** (puissance de matrice). Prenons l'exemple suivant.

import numpy as np
print np.matrix('1 2; 3 4')

Le programme ci-dessus générera la sortie suivante.

matrix([[1, 2],
[3, 4]])

Transposition conjuguée de la matrice

Cette fonction renvoie la transposition conjuguée (complexe) de self. Prenons l'exemple suivant.

import numpy as np
mat = np.matrix('1 2; 3 4')
print mat.H

Le programme ci-dessus générera la sortie suivante.

matrix([[1, 3],
        [2, 4]])

Transposer la matrice

Cette fonction renvoie la transposition de soi. Prenons l'exemple suivant.

import numpy as np
mat = np.matrix('1 2; 3 4')
mat.T

Le programme ci-dessus générera la sortie suivante.

matrix([[1, 3],
        [2, 4]])

Lorsque nous transposons une matrice, nous fabriquons une nouvelle matrice dont les lignes sont les colonnes de l'original. Une transposition conjuguée, par contre, intervertit la ligne et l'index de colonne pour chaque élément de la matrice. L'inverse d'une matrice est une matrice qui, si elle est multipliée avec la matrice d'origine, aboutit à une matrice d'identité.