docs: def transform(self, X):
          """
          Add the features calculated using the timeseries_container and add them to the corresponding rows in the input
          pandas.DataFrame X.
  
          To save some computing time, you should only include those time serieses in the container, that you
          need. You can set the timeseries container with the method :func:`set_timeseries_container`.
  
          :param X: the DataFrame to which the calculated timeseries features will be added. This is *not* the
                 dataframe with the timeseries itself.
          :type X: pandas.DataFrame
  
          :return: The input DataFrame, but with added features.
          :rtype: pandas.DataFrame
          """
          if self.timeseries_container is None:
              raise RuntimeError("You have to provide a time series using the set_timeseries_container function before.")
  
          # Extract only features for the IDs in X.index
          timeseries_container_X = restrict_input_to_index(self.timeseries_container, self.column_id, X.index)
  
          extracted_features = extract_features(timeseries_container_X,
                                                default_fc_parameters=self.default_fc_parameters,
                                                kind_to_fc_parameters=self.kind_to_fc_parameters,
                                                column_id=self.column_id, column_sort=self.column_sort,
                                                column_kind=self.column_kind, column_value=self.column_value,
                                                chunksize=self.chunksize,
                                                n_jobs=self.n_jobs, show_warnings=self.show_warnings,
                                                disable_progressbar=self.disable_progressbar,
                                                impute_function=self.impute_function,
                                                profile=self.profile,
                                                profiling_filename=self.profiling_filename,
                                                profiling_sorting=self.profiling_sorting)
  
          X = pd.merge(X, extracted_features, left_index=True, right_index=True, how="left")
  
          return X