def transform(self, X):
        """
        Discretize X using a split scheme obtained with CAIM.
        Parameters
        ----------
        X : array-like or pandas dataframe, shape [n_samples, n_features]
            Input array can contain missing values
        Returns
        -------
        X_di : sparse matrix if sparse=True else a 2-d array, dtype=int
            Transformed input.
        """

        if isinstance(X, pd.DataFrame):
            self.indx = X.index
            self.columns = X.columns
            X = X.values
        X_di = X.copy()
        categorical = self.categorical

        scheme = self.split_scheme
        for j in range(X.shape[1]):
            if j in categorical:
                continue
            sh = scheme[j]
            sh[-1] = sh[-1] + 1
            xj = X[:, j]
            # xi = xi[np.invert(np.isnan(xi))]
            for i in range(len(sh) - 1):
                ind = np.where((xj >= sh[i]) & (xj < sh[i + 1]))[0]
                X_di[ind, j] = i
        if hasattr(self, 'indx'):
            return pd.DataFrame(X_di, index=self.indx, columns=self.columns)
        return X_di
def transform ( self , X ) : if isinstance ( X , pd . DataFrame ) : self . indx = X . index self . columns = X . columns X = X . values X_di = X . copy ( ) categorical = self . categorical scheme = self . split_scheme for j in range ( X . shape [ 1 ] ) : if j in categorical : continue sh = scheme [ j ] sh [ - 1 ] = sh [ - 1 ] + 1 xj = X [ : , j ] for i in range ( len ( sh ) - 1 ) : ind = np . where ( ( xj >= sh [ i ] ) & ( xj < sh [ i + 1 ] ) ) [ 0 ] X_di [ ind , j ] = i if hasattr ( self , 'indx' ) : return pd . DataFrame ( X_di , index = self . indx , columns = self . columns ) return X_di
Discretize X using a split scheme obtained with CAIM.
        Parameters
        ----------
        X : array-like or pandas dataframe, shape [n_samples, n_features]
            Input array can contain missing values
        Returns
        -------
        X_di : sparse matrix if sparse=True else a 2-d array, dtype=int
            Transformed input.