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]) |