【发布时间】:2015-08-12 10:06:41
【问题描述】:
我对 SPARKR 比较陌生。我下载了 SPARK 1.4 并设置 RStudio 以使用 SPARKR 库。但是我想知道如何将函数应用于分布式 DataFrame 的列中的每个值,有人可以帮忙吗? 例如,
这很好用
myFunc <- function(x) { paste(x , "_hello")}
c <- c("a", "b", "c")
d <- lapply(c, myFunc)
如何使其适用于分布式 DataFrame。 目的是将“_hello”附加到DF的列名称的每个值
DF <- read.df(sqlContext, "TV_Flattened_2.csv", source = "com.databricks.spark.csv", header="true")
SparkR:::lapply(DF$Name, myFunc)
在 SPARK 1.4 发布之前的 alpha 版本的 SPARKR 中似乎有这个能力,为什么现在在 SPARK 1.4 正式版本中没有这个能力?
【问题讨论】:
-
我对 sparkr 一无所知,但您可能更需要
name(DF)而不是DF$Name吗? -
在底层,lapply 函数仍然是 SparkR 1.4 的一部分,但目前它不是全局函数,我不知道为什么。你也应该看看地图功能。