> Modules non standards > SciPy > Matrices Sparse
Matrices Sparse
Format COO (coordinate format, ijv format) :
- format de matrice sparse où chaque cellule non nulle est stockée sous forme (numéro de ligne, numéro de colonne, valeur).
- Le format COO permet des conversions rapides vers CSR ou CSC, mais pas des opérations arithmétiques.
- mat = scipy.io.mmread('matrixFile.mtx') : lit un fichier au format matrix market exchange et renvoie une matrice sparse de type coo (coo_matrix).
- mat = mat.astype(int) : pour changer le type des éléments de la matrice.
- scipy.io.mmwrite('output.mtx', mat) : pour écrire la matrice. Peut aussi être utilisé avec une matrice CSR ou CSC.
- mat.toarray() : convertit en une array numpy dense.
- mat.tocsr() : convertit en format CSR (csr_matrix)
- mat.tocsc() : convertit en format CSC (csc_matrix)
Format CSR (compressed sparse row format) :
- pour une matrix n x p avec m valeurs non nulles : triplet indices, data, indptr d'array numpy 1d de tailles respectives m, m et n + 1. Les éléments de la ligne i sont aux colonnes indices[indptr[i]:indptr[i+1]] et ont comme valeurs data[indptr[i]:indptr[i+1]]
- permet les opérations arithmétiques et efficace pour les opérations orientées ligne.
- mat.indices, mat.data, mat.indptr : accès aux 3 array numpy
- mat.toarray() : convertit en une array numpy dense.
- mat.tocoo() : convertit en format COO.
- mat.tocsc() : convertit en format CSC.
Format CSC (compressed sparse column format) :
- pour une matrix n x p avec m valeurs non nulles : triplet indices, data, indptr d'array numpy 1d de tailles respectives m, m et p + 1. Les éléments de la colonne j sont aux lignes indices[indptr[j]:indptr[j+1]] et ont comme valeurs data[indptr[j]:indptr[j+1]]
- mat.indices, mat.data, mat.indptr : accès aux 3 array numpy
- mat.toarray() : convertit en une array numpy dense.
- mat.tocoo() : convertit en format COO.
- mat.tocsr() : convertit en format CSR.
Copyright python-simple.com

programmer en python, tutoriel python, graphes en python, Aymeric Duclert