Compressed Sparse Column matrix
This can be instantiated in several ways:
- csc_matrix(D)
- with a dense matrix or rank-2 ndarray D
- csc_matrix(S)
- with another sparse matrix S (equivalent to S.tocsc())
- csc_matrix((M, N), [dtype])
- to construct an empty matrix with shape (M, N) dtype is optional, defaulting to dtype=’d’.
- csc_matrix((data, ij), [shape=(M, N)])
- where data and ij satisfy the relationship a[ij[0, k], ij[1, k]] = data[k]
- csc_matrix((data, indices, indptr), [shape=(M, N)])
- is the standard CSC representation where the row indices for column i are stored in indices[indptr[i]:indices[i+1]] and their corresponding values are stored in data[indptr[i]:indptr[i+1]]. If the shape parameter is not supplied, the matrix dimensions are inferred from the index arrays.
Notes
Sparse matrices can be used in arithmetic operations: they support addition, subtraction, multiplication, division, and matrix power.
Examples
>>> from scipy.sparse import *
>>> from scipy import *
>>> csc_matrix( (3,4), dtype=int8 ).todense()
matrix([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]], dtype=int8)
>>> row = array([0,2,2,0,1,2])
>>> col = array([0,0,1,2,2,2])
>>> data = array([1,2,3,4,5,6])
>>> csc_matrix( (data,(row,col)), shape=(3,3) ).todense()
matrix([[1, 0, 4],
[0, 0, 5],
[2, 3, 6]])
>>> indptr = array([0,2,3,6])
>>> indices = array([0,2,2,0,1,2])
>>> data = array([1,2,3,4,5,6])
>>> csc_matrix( (data,indices,indptr), shape=(3,3) ).todense()
matrix([[1, 0, 4],
[0, 0, 5],
[2, 3, 6]])
Attributes
| dtype | |
| shape | |
| ndim | int(x[, base]) -> integer |
| nnz | |
| has_sorted_indices | Determine whether the matrix has sorted indices |
| data | Data array of the matrix |
| indices | CSC format index array |
| indptr | CSC format index pointer array |
Methods
| asformat(format) | Return this matrix in a given sparse format |
| asfptype() | Upcast matrix to a floating point format (if necessary) |
| astype(t) | |
| check_format([full_check]) | check whether the matrix format is valid |
| conj() | |
| conjugate() | |
| copy() | |
| diagonal() | Returns the main diagonal of the matrix |
| dot(other) | |
| eliminate_zeros() | Remove zero entries from the matrix |
| 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 |
| mean([axis]) | Average the matrix over the given axis. |
| multiply(other) | Point-wise multiplication by another matrix |
| nonzero() | nonzero indices |
| prune() | Remove empty space after all non-zero elements. |
| reshape(shape) | |
| set_shape(shape) | |
| setdiag(values[, k]) | Fills the diagonal elements {a_ii} with the values from the given sequence. |
| sort_indices() | Sort the indices of this matrix in place |
| sorted_indices() | Return a copy of this matrix with sorted indices |
| sum([axis]) | Sum the matrix over the given axis. |
| sum_duplicates() | Eliminate duplicate matrix entries by adding them together |
| toarray() | |
| tobsr([blocksize]) | |
| tocoo([copy]) | Return a COOrdinate representation of this matrix |
| tocsc([copy]) | |
| tocsr() | |
| todense() | |
| todia() | |
| todok() | |
| tolil() | |
| transpose([copy]) |