inplace_row_scale (original) (raw)
sklearn.utils.sparsefuncs.inplace_row_scale(X, scale)[source]#
Inplace row scaling of a CSR or CSC matrix.
Scale each row of the data matrix by multiplying with specific scale provided by the caller assuming a (n_samples, n_features) shape.
Parameters:
Xsparse matrix of shape (n_samples, n_features)
Matrix to be scaled. It should be of CSR or CSC format.
scalendarray of shape (n_features,), dtype={np.float32, np.float64}
Array of precomputed sample-wise values to use for scaling.
Examples
from sklearn.utils import sparsefuncs from scipy import sparse import numpy as np indptr = np.array([0, 2, 3, 4, 5]) indices = np.array([0, 1, 2, 3, 3]) data = np.array([8, 1, 2, 5, 6]) scale = np.array([2, 3, 4, 5]) csr = sparse.csr_matrix((data, indices, indptr)) csr.todense() matrix([[8, 1, 0, 0], [0, 0, 2, 0], [0, 0, 0, 5], [0, 0, 0, 6]]) sparsefuncs.inplace_row_scale(csr, scale) csr.todense() matrix([[16, 2, 0, 0], [ 0, 0, 6, 0], [ 0, 0, 0, 20], [ 0, 0, 0, 30]])