Spark 教程

Spark SQL

Spark 笔记

Spark MLlib

pyspark dataframe 字符串类型字段/列 去除/去掉/删除 所有的空格

Spark DataFrame 原理及操作详解 Spark DataFrame 原理及操作详解


pyspark dataframe 字符串类型的某列如何去除所有的空格字符?

推荐方式

利用 spark dataframe 的 functions 包的 regexp_replace 函数即可搞定,示例如下:

from pyspark.sql.functions import regexp_replace

df = df.withColumn('query', regexp_replace('query', ' ', ''))

上述示例对 dataframe 的 query 列的字符串做首尾空格去除操作,完整示例代码如下:

from pyspark.sql import SparkSession
from pyspark.sql.functions import regexp_replace

spark_session = SparkSession.builder \
    .appName('knowledgedict-dataframe') \
    .master('local') \
    .getOrCreate()

df = spark_session.createDataFrame(
    schema=['query', 'content'],
    data=[
        (' bei  jing ', ['product']),
        ('  tian jin ', ['product', 'article']),
        (' shanghai ', ['article', 'person'])
    ]
)

df.show()

df = df.withColumn('query', regexp_replace('query', ' ', ''))
df.show()