scipy.sparse.

dok_matrix#

class scipy.sparse.dok_matrix(arg1, shape=None, dtype=None, copy=False, *, maxprint=None)[Quelle]#

Dictionary Of Keys (DOK) basierte dünnbesetzte Matrix.

Dies ist eine effiziente Struktur für die schrittweise Konstruktion dünnbesetzter Matrizen.

Dies kann auf verschiedene Arten instanziiert werden
dok_matrix(D)

wobei D ein 2-D ndarray ist

dok_matrix(S)

mit einem anderen dünnbesetzten Array oder einer anderen dünnbesetzten Matrix S (entspricht S.todok())

dok_matrix((M,N), [dtype])

erstellt die Matrix mit der anfänglichen Form (M,N), dtype ist optional, Standard ist dtype=’d’

Attribute:
dtypedtype

Datentyp der Matrix

shape2-Tupel

Form einer Sparse-Matrix abrufen.

ndimint

Anzahl der Dimensionen (dies ist immer 2)

nnz

Anzahl der gespeicherten Werte, einschließlich expliziter Nullen.

size

Anzahl der gespeicherten Werte.

T

Transponierte.

Methoden

__len__()

Gibt len(self) zurück.

__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.

clear()

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

fromkeys(iterable[, value])

Erstellt ein neues Dictionary mit Schlüsseln aus iterable und Werten, die auf value gesetzt sind.

get(key[, default])

Bietet Funktionalität der dict.get-Methode mit Typüberprüfung

getH()

Gibt die hermitesche Transponierte dieser Matrix zurück.

get_shape()

Form einer Sparse-Matrix abrufen.

getcol(j)

Gibt eine Kopie der Spalte j der Matrix als (m x 1) Sparse-Matrix (Spaltenvektor) zurück.

getformat()

Matrixspeicherformat

getmaxprint()

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.

items()

keys()

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.

pop(k[,d])

Wenn der Schlüssel nicht gefunden wird, wird default zurückgegeben, wenn es angegeben ist; andernfalls wird ein KeyError ausgelöst.

popitem()

Entfernt und gibt ein (Schlüssel, Wert)-Paar als 2-Tupel zurück.

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 shape gegebenen Dimensionen.

set_shape(shape)

Setzt die Form der Matrix inplace

setdefault(key[, default])

Fügt den Schlüssel mit dem Wert default ein, wenn der Schlüssel nicht im Dictionary vorhanden ist.

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.

tobsr([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.

update([E, ]**F)

Wenn E vorhanden ist und eine .keys()-Methode hat, dann gilt: for k in E: D[k] = E[k] Wenn E vorhanden ist und keine .keys()-Methode hat, dann gilt: for k, v in E: D[k] = v In beiden Fällen folgt darauf: for k in F: D[k] = F[k]

Werte()

__getitem__

Hinweise

Sparse-Matrizen können in arithmetischen Operationen verwendet werden: sie unterstützen Addition, Subtraktion, Multiplikation, Division und Matrixpotenz.

  • Ermöglicht einen effizienten Zugriff auf einzelne Elemente mit O(1).

  • Duplikate sind nicht erlaubt.

  • Kann nach der Konstruktion effizient in eine coo_matrix konvertiert werden.

Beispiele

>>> import numpy as np
>>> from scipy.sparse import dok_matrix
>>> S = dok_matrix((5, 5), dtype=np.float32)
>>> for i in range(5):
...     for j in range(5):
...         S[i, j] = i + j    # Update element