Skip to contents

Apply a function to each partition of a SparkDataFrame and collect the result back to R as a data.frame.

Usage

dapplyCollect(x, func)

# S4 method for class 'SparkDataFrame,`function`'
dapplyCollect(x, func)

Arguments

x

A SparkDataFrame

func

A function to be applied to each partition of the SparkDataFrame. func should have only one parameter, to which a R data.frame corresponds to each partition will be passed. The output of func should be a R data.frame.

Note

dapplyCollect since 2.0.0

Examples

if (FALSE) { # \dontrun{
  df <- createDataFrame(iris)
  ldf <- dapplyCollect(df, function(x) { x })

  # filter and add a column
  df <- createDataFrame(
          list(list(1L, 1, "1"), list(2L, 2, "2"), list(3L, 3, "3")),
          c("a", "b", "c"))
  ldf <- dapplyCollect(
           df,
           function(x) {
             y <- x[x[1] > 1, ]
             y <- cbind(y, y[1] + 1L)
           })
  # the result
  #       a b c d
  #       2 2 2 3
  #       3 3 3 4
} # }