数据样本:
1991;113;High Heels;Comedy;Bos�, Miguel;Abril, Victoria;Almod�var, Pedro;68;No;NicholasCage.png
如何使用Spark中的Scala删除Unicode并将字符串映射到标准字符串格式。
注意:我确实提到了PySpark解决方案,但我正在寻找基于Scala的解决方案。
答案 0 :(得分:2)
您可以从StringUtils
导入org.apache.commons.lang3
课程并使用this方法
然后在您的RDD上执行地图:
rdd.map(word => StringUtils.stripAccents(word))
你可以根据你的使用情况获得依赖here(maven,sbt等)。
以下使用RDD [String]
的快速示例val rawRDD = sc.parallelize(List("Tĥïŝ ĩš â fůňķŷ Šťŕĭńġ","Tĥïŝ ĩš ânóthêr fůňķŷ Šťŕĭńġ") )
val newRDD = rawRDD.map(word => StringUtils.stripAccents(word))
rawRDD
Tĥïŝ ĩš â fůňķŷ Šťŕĭńġ
Tĥïŝ ĩš ânóthêr fůňķŷ Šťŕĭńġ
newRDD
This is a funky String
This is another funky String