pyspark 将单斜线替换为双斜线

jpfvwuh4  于 2023-01-25  发布在  Spark
关注(0)|答案(1)|浏览(200)

我有下面的Apache Spark数据框架df_result,其中有一列Name

df_result.repartition(1).write.option('header','true').option("delimiter","|").option("escape", "\\").mode("overwrite").csv(path)

在此列中,值如下所示。

Name
.....
John
Mathew\M

在第二行中,有一个\字符。当我使用上面的脚本将其导出到csv时,它在文件中生成的值为Mathew\M。理想情况下,我需要文件中的值为Mathew\\M(即,单个\应替换为\\)。是否有方法使用option或其他方法来完成此操作?
我使用的是Apache Spark 3.2.1。

mbskvtky

mbskvtky1#

这个有用吗?好像对我有用

df.withColumn('Name', regexp_replace('Name','\\\\',r'\1\\\\')).write.option('header','true').option("delimiter","|").option("escape", "\\").mode("overwrite").csv("/tmp/output/wk/bn.cv")

相关问题