Rescale each feature individually to range [-1, 1] by dividing through the largest maximum absolute value in each feature. It does not shift/center the data, and thus does not destroy any sparsity.

  input_col = NULL,
  output_col = NULL,
  uid = random_string("max_abs_scaler_"),



A spark_connection, ml_pipeline, or a tbl_spark.


The name of the input column.


The name of the output column.


A character string used to uniquely identify the feature transformer.


Optional arguments; currently unused.


The object returned depends on the class of x.

  • spark_connection: When x is a spark_connection, the function returns a ml_transformer, a ml_estimator, or one of their subclasses. The object contains a pointer to a Spark Transformer or Estimator object and can be used to compose Pipeline objects.

  • ml_pipeline: When x is a ml_pipeline, the function returns a ml_pipeline with the transformer or estimator appended to the pipeline.

  • tbl_spark: When x is a tbl_spark, a transformer is constructed then immediately applied to the input tbl_spark, returning a tbl_spark


In the case where x is a tbl_spark, the estimator fits against x to obtain a transformer, which is then immediately used to transform x, returning a tbl_spark.

See also


if (FALSE) { sc <- spark_connect(master = "local") iris_tbl <- sdf_copy_to(sc, iris, name = "iris_tbl", overwrite = TRUE) features <- c("Sepal_Length", "Sepal_Width", "Petal_Length", "Petal_Width") iris_tbl %>% ft_vector_assembler( input_col = features, output_col = "features_temp" ) %>% ft_max_abs_scaler( input_col = "features_temp", output_col = "features" ) }