SciPy

scipy.sparse.dok_matrix

class scipy.sparse.dok_matrix(arg1, shape=None, dtype=None, copy=False)[source]

Dictionary Of Keys based sparse matrix.

This is an efficient structure for constructing sparse matrices incrementally.

This can be instantiated in several ways:
dok_matrix(D)

with a dense matrix, D

dok_matrix(S)

with a sparse matrix, S

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

create the matrix with initial shape (M,N) dtype is optional, defaulting to dtype=’d’

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

>>> 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
Attributes
dtypedtype

Data type of the matrix

shape2-tuple

Get shape of a matrix.

ndimint

Number of dimensions (this is always 2)

nnz

Number of stored values, including explicit zeros.

Methods

__len__(self)

Return len(self).

__mul__(self, other)

interpret other and call one of the following

asformat(self, format[, copy])

Return this matrix in the passed format.

asfptype(self)

Upcast matrix to a floating point format (if necessary)

astype(self, dtype[, casting, copy])

Cast the matrix elements to a specified type.

clear()

conj(self[, copy])

Element-wise complex conjugation.

conjtransp(self)

Return the conjugate transpose.

conjugate(self[, copy])

Element-wise complex conjugation.

copy(self)

Returns a copy of this matrix.

count_nonzero(self)

Number of non-zero entries, equivalent to

diagonal(self[, k])

Returns the kth diagonal of the matrix.

dot(self, other)

Ordinary dot product

fromkeys(iterable[, value])

Create a new dictionary with keys from iterable and values set to value.

get(self, key[, default])

This overrides the dict.get method, providing type checking but otherwise equivalent functionality.

getH(self)

Return the Hermitian transpose of this matrix.

get_shape(self)

Get shape of a matrix.

getcol(self, j)

Returns a copy of column j of the matrix, as an (m x 1) sparse matrix (column vector).

getformat(self)

Format of a matrix representation as a string.

getmaxprint(self)

Maximum number of elements to display when printed.

getnnz(self[, axis])

Number of stored values, including explicit zeros.

getrow(self, i)

Returns a copy of row i of the matrix, as a (1 x n) sparse matrix (row vector).

items()

keys()

maximum(self, other)

Element-wise maximum between this and another matrix.

mean(self[, axis, dtype, out])

Compute the arithmetic mean along the specified axis.

minimum(self, other)

Element-wise minimum between this and another matrix.

multiply(self, other)

Point-wise multiplication by another matrix

nonzero(self)

nonzero indices

pop()

If key is not found, d is returned if given, otherwise KeyError is raised

popitem()

2-tuple; but raise KeyError if D is empty.

power(self, n[, dtype])

Element-wise power.

reshape(self, shape[, order, copy])

Gives a new shape to a sparse matrix without changing its data.

resize(self, \*shape)

Resize the matrix in-place to dimensions given by shape

set_shape(self, shape)

See reshape.

setdefault(self, key[, default])

Insert key with a value of default if key is not in the dictionary.

setdiag(self, values[, k])

Set diagonal or off-diagonal elements of the array.

sum(self[, axis, dtype, out])

Sum the matrix elements over a given axis.

toarray(self[, order, out])

Return a dense ndarray representation of this matrix.

tobsr(self[, blocksize, copy])

Convert this matrix to Block Sparse Row format.

tocoo(self[, copy])

Convert this matrix to COOrdinate format.

tocsc(self[, copy])

Convert this matrix to Compressed Sparse Column format.

tocsr(self[, copy])

Convert this matrix to Compressed Sparse Row format.

todense(self[, order, out])

Return a dense matrix representation of this matrix.

todia(self[, copy])

Convert this matrix to sparse DIAgonal format.

todok(self[, copy])

Convert this matrix to Dictionary Of Keys format.

tolil(self[, copy])

Convert this matrix to List of Lists format.

transpose(self[, axes, copy])

Reverses the dimensions of the sparse matrix.

update(self, val)

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values()

__getitem__

Previous topic

scipy.sparse.dia_matrix.trunc

Next topic

scipy.sparse.dok_matrix.__len__