class_docstr: Class for processing data without transforming encoded features.
  Encoded features - features after OneHot encoding operation, when one
  feature (with categorical values) can be represented as several boolean
  vectors
class_docstr_tok: ["Class","for","processing","data","without","transforming","encoded","features",".","Encoded","features","-","features","after","OneHot","encoding","operation",",","when","one","feature","(","with","categorical","values",")","can","be","represented","as","several","boolean","vectors"]
docstr: Method for fit transformer with automatic determination
  of boolean features, with which there is no need to make transformation
  
  :param input_data: data with features, target and ids to process
  :return operation: trained transformer (optional output)
docstr_tok: ["Method","for","fit","transformer","with","automatic","determination","of","boolean","features",",","with","which","there","is","no","need","to","make","transformation",":","param","input_data",":","data","with","features",",","target","and","ids","to","process",":","return","operation",":","trained","transformer","(","optional","output",")"]
code: def fit(self, input_data: InputData):
      """Method for fit transformer with automatic determination
      of boolean features, with which there is no need to make transformation
  
      :param input_data: data with features, target and ids to process
      :return operation: trained transformer (optional output)
      """
  
      features = input_data.features
  
      # Find boolean columns in features table
      bool_ids, ids_to_process = self._reasonability_check(features)
      self.ids_to_process = ids_to_process
      self.bool_ids = bool_ids
      if len(ids_to_process) > 0:
          features_to_process = (
              np.array(features[:, ids_to_process])
              if features.ndim > 1
              else features
          )
          self.operation.fit(features_to_process)
      return self.operation
  
imports: from abc import ABC, abstractmethod
  from copy import deepcopy
  from typing import Optional
  import numpy
  from golem.core.log import default_log
  from fedot.core.data.data import InputData, OutputData
  from fedot.core.operations.operation_parameters import OperationParameters
  from fedot.core.repository.dataset_types import DataTypesEnum
  from fedot.utilities.custom_errors import AbstractMethodNotImplementError
label_desc: Use image node_id 2 for calling the EncodedInvariantImplementation obj's underlying member method code with example usage: obj.fit(input_data) and returns: self