code: def predict(self, X):
          r
          X = np.asarray(X)
          if self.clfs_ is None:
              raise ValueError("Train before prediction")
          if X.shape[1] != self.n_features_:
              raise ValueError('Given feature size does not match')
  
          pred = np.zeros((X.shape[0], self.n_labels_))
          for i in range(self.n_labels_):
              pred[:, i] = self.clfs_[i].predict(X)
          return pred.astype(int)
docs: r"""Predict labels.
  
          Parameters
          ----------
          X : array-like, shape=(n_samples, n_features)
              Feature vector.
  
          Returns
          -------
          pred : numpy array, shape=(n_samples, n_labels)
              Predicted labels of given feature vector.