code: def main(input_dir, output_dir):
      
  
      import ballet.util.log
      ballet.util.log.enable(logger=logger, level='INFO', echo=False)
      ballet.util.log.enable(logger=ballet.util.log.logger, level='INFO',
                             echo=False)
  
      X_df, y_df = load_data(input_dir=input_dir)
      out = build()
  
      mapper_X = out['mapper_X']
      encoder_y = out['encoder_y']
  
      X_ft = mapper_X.transform(X_df)
      y_ft = encoder_y.transform(y_df)
  
      save_features(X_ft, output_dir)
      save_targets(y_ft, output_dir)
docs: Engineer features