scipy.sparse.lil_matrix

class scipy.sparse.lil_matrix(arg1, shape=None, dtype=None, copy=False)

Row-based linked list sparse matrix

This is an efficient structure for constructing sparse matrices incrementally.

This can be instantiated in several ways:
lil_matrix(D)
with a dense matrix or rank-2 ndarray D
lil_matrix(S)
with another sparse matrix S (equivalent to S.tocsc())
lil_matrix((M, N), [dtype])
to construct an empty matrix with shape (M, N) dtype is optional, defaulting to dtype=’d’.

Notes

Advantages of the LIL format
  • supports flexible slicing
  • changes to the matrix sparsity structure are efficient
Disadvantages of the LIL format
  • arithmetic operations LIL + LIL are slow (consider CSR or CSC)
  • slow column slicing (consider CSC)
  • slow matrix vector products (consider CSR or CSC)
Intended Usage
  • LIL is a convenient format for constructing sparse matrices
  • once a matrix has been constructed, convert to CSR or CSC format for fast arithmetic and matrix vector operations
  • consider using the COO format when constructing large matrices
Data Structure
  • An array (self.rows) of rows, each of which is a sorted list of column indices of non-zero elements.
  • The corresponding nonzero values are stored in similar fashion in self.data.

Previous topic

scipy.sparse.bsr_matrix

Next topic

scipy.sparse.dok_matrix

This Page

Quick search