使用 PySpark 删除和替换字符

Posted

技术标签:

【中文标题】使用 PySpark 删除和替换字符【英文标题】:Remove & replace characters using PySpark 【发布时间】:2018-01-16 14:48:53 【问题描述】:

我有一个数据框,想删除所有括号并替换为两个连字符。

之前:

+------------+
|  dob_concat|
+------------+
|[1983][6][3]|
+------------+

之后:

+------------+
| dob_concat |
+------------+
| 1983-6-3   |
+------------+

【问题讨论】:

【参考方案1】:

您可以使用regex_replace 内置函数,如下所示。

from pyspark.sql import functions as F
df.withColumn("dob_concat", F.regexp_replace(F.regexp_replace(F.regexp_replace("dob_concat", "\\]\\[", "-"), "\\[", ""), "\\]", "")).show()

【讨论】:

以上是关于使用 PySpark 删除和替换字符的主要内容,如果未能解决你的问题,请参考以下文章

Pyspark 删除数据框列中的多个字符

如何替换/删除 PySpark RDD 中的正则表达式?

字符串中的 Pyspark 双字符替换避免某些单词而不映射到 pandas 或 rdd

在 python 或 Pyspark 数据框中使用特殊字符重命名列

Pyspark - 用不同的字符替换字符串的一部分(字符数不均匀)

PySpark:用数值替换字符串