code: def transform_ct(x_in, model, encoding):
      """
      Transform when using a ColumnsTransformer.
  
      As ColumnsTransformer output hstack the result of transformers, if the TOP-preprocessed data are re-ordered
      after the ColumnTransformer the inverse transform must return false result.
  
      We successively apply the transformers with columns position. That's why colnames
      are prefixed by the transformers names.
  
      Parameters
      ----------
      x_in : pandas.DataFrame
          Raw dataset to apply preprocessing
      model: model object
          model used to check the different values of target estimate predict_proba
      encoding : list
          The list must contain a single ColumnsTransformer and an optional list of dict.
  
      Returns
      -------
      pandas.Dataframe
          The data preprocessed for the given list of encoding.
      """
      if str(type(encoding)) == columntransformer:
          # We use inverse tranform from the encoding method base on columns position
          if str(type(model)) in sklearn_model:
              rst = pd.DataFrame(
                  encoding.transform(x_in), index=x_in.index
              )
              rst.columns = [
                  "col_" + str(feature) for feature in rst.columns
              ]
  
          elif str(type(model)) in other_model:
              rst = pd.DataFrame(
                  encoding.transform(x_in),
                  columns=extract_features_model(
                      model, dict_model_feature[str(type(model))]
                  ),
                  index=x_in.index,
              )
          else:
              raise ValueError(
                  "Model specified isn't supported by Shapash."
              )
  
      elif str(type(encoding)) == "<class 'list'>":
          rst = transform_ordinal(x_in, encoding)
  
      else:
          raise Exception(
              f"{encoding.__class__.__name__} not supported, no preprocessing done."
          )
  
      return rst
  
file_path: shapash/shapash/utils/columntransformer_backend.py
imports: import pandas
  import numpy
  from shapash.utils.category_encoder_backend import inv_transform_ordinal
  from shapash.utils.category_encoder_backend import inv_transform_ce
  from shapash.utils.category_encoder_backend import supported_category_encoder
  from shapash.utils.category_encoder_backend import dummies_category_encoder
  from shapash.utils.category_encoder_backend import category_encoder_binary
  from shapash.utils.category_encoder_backend import transform_ordinal, get_col_mapping_ce
  from shapash.utils.model_synoptic import simple_tree_model_sklearn, catboost_model, linear_model, svm_model, xgboost_model, lightgbm_model, dict_model_feature
  from shapash.utils.model import extract_features_model
label_desc: Use image node_id 5 for calling a global function with example usage: transform_ct(x_in, model, encoding) and returns: rst