PCA trains a model to project vectors to a lower dimensional space of the top k principal components.
Usage
ft_pca(
x,
input_col = NULL,
output_col = NULL,
k = NULL,
uid = random_string("pca_"),
...
)
ml_pca(x, features = tbl_vars(x), k = length(features), pc_prefix = "PC", ...)Arguments
- x
A
spark_connection,ml_pipeline, or atbl_spark.- input_col
The name of the input column.
- output_col
The name of the output column.
- k
The number of principal components
- uid
A character string used to uniquely identify the feature transformer.
- ...
Optional arguments; currently unused.
- features
The columns to use in the principal components analysis. Defaults to all columns in
x.- pc_prefix
Length-one character vector used to prepend names of components.
Value
The object returned depends on the class of x. If it is a
spark_connection, the function returns a ml_estimator or a
ml_estimator object. If it is a ml_pipeline, it will return
a pipeline with the transformer or estimator appended to it. If a
tbl_spark, it will return a tbl_spark with the transformation
applied to it.
Details
In the case where x is a tbl_spark, the estimator
fits against x to obtain a transformer, returning a tbl_spark.
ml_pca() is a wrapper around ft_pca() that returns a
ml_model.
See also
Other feature transformers:
ft_binarizer(),
ft_bucketizer(),
ft_chisq_selector(),
ft_count_vectorizer(),
ft_dct(),
ft_elementwise_product(),
ft_feature_hasher(),
ft_hashing_tf(),
ft_idf(),
ft_imputer(),
ft_index_to_string(),
ft_interaction(),
ft_lsh,
ft_max_abs_scaler(),
ft_min_max_scaler(),
ft_ngram(),
ft_normalizer(),
ft_one_hot_encoder(),
ft_one_hot_encoder_estimator(),
ft_polynomial_expansion(),
ft_quantile_discretizer(),
ft_r_formula(),
ft_regex_tokenizer(),
ft_robust_scaler(),
ft_sql_transformer(),
ft_standard_scaler(),
ft_stop_words_remover(),
ft_string_indexer(),
ft_tokenizer(),
ft_vector_assembler(),
ft_vector_indexer(),
ft_vector_slicer(),
ft_word2vec()
Examples
if (FALSE) { # \dontrun{
library(dplyr)
sc <- spark_connect(master = "local")
iris_tbl <- sdf_copy_to(sc, iris, name = "iris_tbl", overwrite = TRUE)
iris_tbl %>%
select(-Species) %>%
ml_pca(k = 2)
} # }