Filter Array Column

R/dplyr_hof.R

hof_filter

Description

Apply an element-wise filtering function to an array column (this is essentially a dplyr wrapper for the filter(array<T>, function<T, Boolean>): array<T> built-in Spark SQL functions)

Usage

 
hof_filter(x, func, expr = NULL, dest_col = NULL, ...) 

Arguments

Arguments Description
x The Spark data frame to filter
func The filtering function
expr The array being filtered, could be any SQL expression evaluating to an array (default: the last column of the Spark data frame)
dest_col Column to store the filtered result (default: expr)
Additional params to dplyr::mutate

Examples

 
 
library(sparklyr) 
sc <- spark_connect(master = "local") 
# only keep odd elements in each array in `array_column` 
copy_to(sc, tibble::tibble(array_column = list(1:5, 21:25))) %>% 
  hof_filter(~ .x %% 2 == 1) 
#> # Source: spark<?> [?? x 1]
#>   array_column
#>   <list>      
#> 1 <dbl [3]>   
#> 2 <dbl [3]>