lil_matrix#
- class scipy.sparse.lil_matrix(arg1, shape=None, dtype=None, copy=False, *, maxprint=None)[Quellcode]#
Reihenbasierte Liste von Listen Sparse-Matrix.
Dies ist eine Struktur zur inkrementellen Konstruktion von dünnbesetzten Matrizen. Beachten Sie, dass das Einfügen eines einzelnen Elements im schlimmsten Fall lineare Zeit in Anspruch nehmen kann; um die Matrix effizient zu konstruieren, stellen Sie sicher, dass die Elemente nach Index, pro Zeile, vorsortiert sind.
- Dies kann auf verschiedene Arten instanziiert werden
- lil_matrix(D)
wobei D ein 2-D ndarray ist
- lil_matrix(S)
mit einem anderen Sparse-Array oder einer anderen Sparse-Matrix S (entspricht S.tolil())
- lil_matrix((M, N), [dtype])
zur Erstellung einer leeren Matrix mit der Form (M, N). dtype ist optional und standardmäßig auf dtype='d' gesetzt.
- Attribute:
- dtypedtype
Datentyp der Matrix
shape2-TupelForm der Matrix
- ndimint
Anzahl der Dimensionen (dies ist immer 2)
nnzAnzahl der gespeicherten Werte, einschließlich expliziter Nullen.
sizeAnzahl der gespeicherten Werte.
- data
LIL-Format-Datenarray der Matrix
- rows
LIL-Format-Zeilenindexarray der Matrix
TTransponierte.
Methoden
__len__()__mul__(other)asformat(format[, copy])Gibt dieses Array/diese Matrix im übergebenen Format zurück.
asfptype()Matrix in Fließkommaformat hochstapeln (falls erforderlich)
astype(dtype[, casting, copy])Gibt die Elemente des Arrays/der Matrix in einem angegebenen Typ aus.
conj([copy])Elementweise komplexe Konjugation.
conjugate([copy])Elementweise komplexe Konjugation.
copy()Gibt eine Kopie dieses Arrays/dieser Matrix zurück.
count_nonzero([axis])Anzahl der Nicht-Null-Einträge, äquivalent zu
diagonal([k])Gibt die k-te Diagonale des Arrays/der Matrix zurück.
dot(other)Gewöhnliches Skalarprodukt
getH()Gibt die hermitesche Transponierte dieser Matrix zurück.
Ruft die Form der Matrix ab
getcol(j)Gibt eine Kopie der Spalte j der Matrix als (m x 1) Sparse-Matrix (Spaltenvektor) zurück.
Matrixspeicherformat
Maximale Anzahl von Elementen, die beim Drucken angezeigt werden.
getnnz([axis])Anzahl der gespeicherten Werte, einschließlich expliziter Nullen.
getrow(i)Gibt eine Kopie der Zeile i der Matrix als (1 x n) Sparse-Matrix (Zeilenvektor) zurück.
getrowview(i)Gibt eine Ansicht der 'i'-ten Zeile zurück (ohne Kopie).
maximum(other)Elementweises Maximum zwischen diesem und einem anderen Array/einer anderen Matrix.
mean([axis, dtype, out])Berechnet das arithmetische Mittel entlang der angegebenen Achse.
minimum(other)Elementweises Minimum zwischen diesem und einem anderen Array/einer anderen Matrix.
multiply(other)Elementweise Multiplikation mit einem anderen Array/einer anderen Matrix.
nonzero()Nicht-Null-Indizes des Arrays/der Matrix.
power(n[, dtype])Elementweise Potenzierung.
reshape(self, shape[, order, copy])Gibt einem Sparse Array/einer Sparse Matrix eine neue Form, ohne dessen/deren Daten zu ändern.
resize(*shape)Ändert die Größe des Arrays/der Matrix direkt auf die durch
shapegegebenen Dimensionen.set_shape(shape)Setzt die Form der Matrix inplace
setdiag(values[, k])Setzt diagonale oder nicht-diagonale Elemente des Arrays/der Matrix.
sum([axis, dtype, out])Summiert die Elemente des Arrays/der Matrix über eine gegebene Achse.
toarray([order, out])Gibt eine dichte ndarray-Darstellung dieses Sparse Arrays/dieser Sparse Matrix zurück.
tobr([blocksize, copy])Konvertiert dieses Array/diese Matrix in das Block Sparse Row (BSR)-Format.
tocoo([copy])Konvertiert dieses Array/diese Matrix in das COOrdinate (COO)-Format.
tocsc([copy])Konvertiert dieses Array/diese Matrix in das Compressed Sparse Column (CSC)-Format.
tocsr([copy])Konvertiert dieses Array/diese Matrix in das Compressed Sparse Row (CSR)-Format.
todense([order, out])Gibt eine dichte Darstellung dieser Sparse-Matrix zurück.
todia([copy])Konvertiert dieses Array/diese Matrix in das sparse DIAgonal-Format.
todok([copy])Konvertiert dieses Array/diese Matrix in das Dictionary Of Keys (DOK)-Format.
tolil([copy])Konvertiert dieses Array/diese Matrix in das List of Lists (LIL)-Format.
trace([offset])Gibt die Summe entlang der Diagonalen des Sparse Arrays/der Sparse Matrix zurück.
transpose([axes, copy])Kehrt die Dimensionen des Sparse Arrays/der Sparse Matrix um.
__getitem__
Hinweise
Sparse-Matrizen können in arithmetischen Operationen verwendet werden: sie unterstützen Addition, Subtraktion, Multiplikation, Division und Matrixpotenz.
- Vorteile des LIL-Formats
unterstützt flexibles Slicing
Änderungen an der Dünnbesetzungsstruktur der Matrix sind effizient
- Nachteile des LIL-Formats
arithmetische Operationen LIL + LIL sind langsam (betrachten Sie CSR oder CSC)
langsames Spaltenslicing (betrachten Sie CSC)
langsame Matrix-Vektor-Produkte (betrachten Sie CSR oder CSC)
- Beabsichtigte Verwendung
LIL ist ein praktisches Format zur Konstruktion von dünnbesetzten Matrizen
Nachdem eine Matrix konstruiert wurde, konvertieren Sie sie für schnelle arithmetische Operationen und Matrix-Vektor-Operationen in das CSR- oder CSC-Format
Ziehen Sie bei der Konstruktion großer Matrizen die Verwendung des COO-Formats in Betracht
- Datenstruktur
Ein Array (
self.rows) von Zeilen, von denen jede eine sortierte Liste von Spaltenindizes von Nicht-Null-Elementen ist.Die entsprechenden Nicht-Null-Werte werden in ähnlicher Weise in
self.datagespeichert.