【发布时间】:2017-07-07 22:23:29
【问题描述】:
我在 spark 2.0 和 scala 中使用 GraphFrame。
我需要从字符串类型的列中删除双引号(在许多列中)。 我正在尝试使用 UDF 这样做:
import org.apache.spark.sql.functions.udf
val removeDoubleQuotes = udf( (x:Any) =>
x match{
case s:String => s.replace("\"","")
case other => other
}
)
我收到以下错误,因为 GraphFrame 不支持 Any 类型。
java.lang.UnsupportedOperationException:Any 类型的架构不是 支持
有什么解决方法?
【问题讨论】:
-
您的列有混合类型吗?为什么不只为字符串编写它并仅将其应用于字符串列?
-
@JoeK 因为我有很多列并且尝试找到一种方法而不是手动查找字符串列。
标签: scala apache-spark user-defined-functions graphframes