diff --git a/sklearn_pandas/dataframe_mapper.py b/sklearn_pandas/dataframe_mapper.py index 7b97f0e..9555a3a 100644 --- a/sklearn_pandas/dataframe_mapper.py +++ b/sklearn_pandas/dataframe_mapper.py @@ -304,7 +304,7 @@ def _transform(self, X, y=None, do_fit=False): self._build() extracted = [] - self.transformed_names_ = [] + transformed_names_ = [] for columns, transformers, options in self.built_features: input_df = options.get('input_df', self.input_df) @@ -333,10 +333,11 @@ def _transform(self, X, y=None, do_fit=False): extracted.append(_handle_feature(Xt)) alias = options.get('alias') + prefix = options.get('prefix', '') suffix = options.get('suffix', '') - self.transformed_names_ += self.get_names( + transformed_names_ += self.get_names( columns, transformers, Xt, alias, prefix, suffix) # handle features not explicitly selected @@ -351,15 +352,17 @@ def _transform(self, X, y=None, do_fit=False): if do_fit: _call_fit(self.built_default.fit, Xt, y) Xt = self.built_default.transform(Xt) - self.transformed_names_ += self.get_names( + transformed_names_ += self.get_names( unsel_cols, self.built_default, Xt) else: # if not applying a default transformer, # keep column names unmodified - self.transformed_names_ += unsel_cols + transformed_names_ += unsel_cols extracted.append(_handle_feature(Xt)) + self.transformed_names_ = transformed_names_ + # combine the feature outputs into one array. # at this point we lose track of which features # were created from which input columns, so it's