'Online computation of max absolute value of X for later scaling.
All of X is processed as a single batch. This is intended for cases
when `fit` is not feasible due to very large number of `n_samples`
or because X is read from a continuous stream.
Parameters
X : {array-like, sparse matrix}, shape [n_samples, n_features]
The data used to compute the mean and standard deviation
used for later scaling along the features axis.
y : Passthrough for ``Pipeline`` compatibility.'

def partial_fit(self, X, y=None):

    X = check_array(X, accept_sparse=('csr', 'csc'), copy=self.copy, estimator=self, dtype=FLOAT_DTYPES)
    if sparse.issparse(X):
        (mins, maxs) = min_max_axis(X, axis=0)
        max_abs = np.maximum(np.abs(mins), np.abs(maxs))
    else:
        max_abs = np.abs(X).max(axis=0)
    if (not hasattr(self, 'n_samples_seen_')):
        self.n_samples_seen_ = X.shape[0]
    else:
        max_abs = np.maximum(self.max_abs_, max_abs)
        self.n_samples_seen_ += X.shape[0]
    self.max_abs_ = max_abs
    self.scale_ = _handle_zeros_in_scale(max_abs)
    return self
