Scala 如何将regexp_replace spark函数应用于多个键值?
假设有一个带有键值对或文本的映射,如:Scala 如何将regexp_replace spark函数应用于多个键值?,scala,apache-spark,apache-spark-sql,Scala,Apache Spark,Apache Spark Sql,假设有一个带有键值对或文本的映射,如: val pairs = Map( "x1" -> "a", "1" -> "xf", "80" -> "AB" ) 有没有一种方法可以在循环中添加带有regexp\u replace调用的新列,如下所示: df.withColumn("newColumn", pairs.mapSomeHow((k,v) => regexp_replace(col("originalColumn"), k, v))) 例如,newCo
val pairs = Map(
"x1" -> "a",
"1" -> "xf",
"80" -> "AB"
)
有没有一种方法可以在循环中添加带有regexp\u replace
调用的新列,如下所示:
df.withColumn("newColumn", pairs.mapSomeHow((k,v) => regexp_replace(col("originalColumn"), k, v)))
例如,newColumn
将使用原始列中的值替换“x1”
,“1”
,“80”
字符串
怎么做?类似于
df.withColumn(
“新专栏”,
成对折叠(df(“原始柱”)){
案例(c,(k,v))=>
regexp_替换(c、k、v)
}
)
这将通过对上一次替换的结果重复应用regexp\u replace
从原始df(“originalColumn”)
实例构建一个列
实例