Dictionary Of Keys based sparse matrix.
This is an efficient structure for constructing sparse matrices incrementally.
Notes
Sparse matrices can be used in arithmetic operations: they support addition, subtraction, multiplication, division, and matrix power.
Allows for efficient O(1) access of individual elements. Duplicates are not allowed. Can be efficiently converted to a coo_matrix once constructed.
Examples
>>> from scipy.sparse import *
>>> from scipy import *
>>> S = dok_matrix((5,5), dtype=float32)
>>> for i in range(5):
>>> for j in range(5):
>>> S[i,j] = i+j # Update element
Attributes
| shape | |
| ndim | int(x[, base]) -> integer |
| nnz |
| dtype | dtype | Data type of the matrix |
Methods
| asformat(format) | Return this matrix in a given sparse format |
| asfptype() | Upcast matrix to a floating point format (if necessary) |
| astype(t) | |
| clear(() -> None. Remove all items from D.) | |
| conj() | |
| conjtransp() | Return the conjugate transpose |
| conjugate() | |
| copy() | |
| diagonal() | Returns the main diagonal of the matrix |
| dot(other) | |
| fromkeys(...) | v defaults to None. |
| get(key[, default]) | This overrides the dict.get method, providing type checking |
| getH() | |
| get_shape() | |
| getcol(j) | Returns a copy of column j of the matrix, as an (m x 1) sparse |
| getformat() | |
| getmaxprint() | |
| getnnz() | |
| getrow(i) | Returns a copy of row i of the matrix, as a (1 x n) sparse |
| has_key((k) -> True if D has a key k, else False) | |
| items(() -> list of D’s (key, value) pairs, ...) | |
| iteritems(() -> an iterator over the (key, ...) | |
| iterkeys(() -> an iterator over the keys of D) | |
| itervalues(...) | |
| keys(() -> list of D’s keys) | |
| mean([axis]) | Average the matrix over the given axis. |
| multiply(other) | Point-wise multiplication by another matrix |
| nonzero() | nonzero indices |
| pop((k[,d]) -> v, ...) | If key is not found, d is returned if given, otherwise KeyError is raised |
| popitem(() -> (k, v), ...) | 2-tuple; but raise KeyError if D is empty. |
| reshape(shape) | |
| resize(shape) | Resize the matrix in-place to dimensions given by ‘shape’. |
| set_shape(shape) | |
| setdefault((k[,d]) -> D.get(k,d), ...) | |
| setdiag(values[, k]) | Fills the diagonal elements {a_ii} with the values from the given sequence. |
| split(cols_or_rows[, columns]) | |
| sum([axis]) | Sum the matrix over the given axis. |
| take(cols_or_rows[, columns]) | |
| toarray([order, out]) | See the docstring for spmatrix.toarray. |
| tobsr([blocksize]) | |
| tocoo() | Return a copy of this matrix in COOrdinate format |
| tocsc() | Return a copy of this matrix in Compressed Sparse Column format |
| tocsr() | Return a copy of this matrix in Compressed Sparse Row format |
| todense([order, out]) | Return a dense matrix representation of this matrix. |
| todia() | |
| todok([copy]) | |
| tolil() | |
| transpose() | Return the transpose |
| update(([E, ...) | If E present and has a .keys() method, does: for k in E: D[k] = E[k] |
| values(() -> list of D’s values) | |
| viewitems(...) | |
| viewkeys(...) | |
| viewvalues(...) |