code: def predict(self, X):
          
          self._check_method("predict")
          X = self._check_array(X)
  
          if isinstance(X, da.Array):
              result = X.map_blocks(
                  _predict, dtype="int", estimator=self._postfit_estimator, drop_axis=1
              )
              return result
  
          elif isinstance(X, dd._Frame):
              return X.map_partitions(
                  _predict, estimator=self._postfit_estimator, meta=np.array([1])
              )
  
          else:
              return _predict(X, estimator=self._postfit_estimator)
docs: Predict for X.
  
          For dask inputs, a dask array or dataframe is returned. For other
          inputs (NumPy array, pandas dataframe, scipy sparse matrix), the
          regular return value is returned.
  
          Parameters
          ----------
          X : array-like
  
          Returns
          -------
          y : array-like