Handles row or column slices
Slicing over an individual axis is supported, but slicing over both axes at the same time is not supported. Partial slices, such as foo[0, 5:10] are not supported, however full slices are supported, such as foo[0, :].
args : tuple or slice
The specific element (by index position) to return or an entire row or column of the data.
float or spmatrix
A float is return if a specific element is specified, otherwise a spmatrix object representing a vector of sparse data is returned.
- If the matrix is empty
- If the arguments do not appear to be a tuple
- If a slice on row and column is specified
- If a partial slice is specified
Switching between slicing rows and columns is inefficient. Slicing of rows requires a CSR representation, while slicing of columns requires a CSC representation, and transforms are performed on the data if the data are not in the required representation. These transforms can be expensive if done frequently.