sklearn.utils.sparsefuncs.inplace_swap_row

sklearn.utils.sparsefuncs.inplace_swap_row(X, m, n)[source]

Swap two rows of a CSC/CSR matrix in-place.

Parameters:
Xsparse matrix of shape (n_samples, n_features)

Matrix whose two rows are to be swapped. It should be of CSR or CSC format.

mint

Index of the row of X to be swapped.

nint

Index of the row of X to be swapped.

Examples

>>> from sklearn.utils import sparsefuncs
>>> from scipy import sparse
>>> import numpy as np
>>> indptr = np.array([0, 2, 3, 3, 3])
>>> indices = np.array([0, 2, 2])
>>> data = np.array([8, 2, 5])
>>> csr = sparse.csr_matrix((data, indices, indptr))
>>> csr.todense()
matrix([[8, 0, 2],
        [0, 0, 5],
        [0, 0, 0],
        [0, 0, 0]])
>>> sparsefuncs.inplace_swap_row(csr, 0, 1)
>>> csr.todense()
matrix([[0, 0, 5],
        [8, 0, 2],
        [0, 0, 0],
        [0, 0, 0]])