Some of the preprocessors are designed to be only one-way (e.g., ObjectVariablizer, NumericToNominal, and NominalToNumeric) this means that their undo functions raise UnImplmentedExceptions. A problem with this is if they are added to a Pipeline they will break the overall undo process. I would argue for changing their undo to just pass through the original object. Alternatively we could put special logic in the Pipeline to catch the exception.
Some of the preprocessors are designed to be only one-way (e.g., ObjectVariablizer, NumericToNominal, and NominalToNumeric) this means that their undo functions raise UnImplmentedExceptions. A problem with this is if they are added to a Pipeline they will break the overall undo process. I would argue for changing their undo to just pass through the original object. Alternatively we could put special logic in the Pipeline to catch the exception.