pyspark dataframe 字符串类型的某列如何去除首尾的空格字符?
推荐方式
利用 spark dataframe 的 withColumn
函数和 functions 的 trim
函数即可搞定,示例如下:
from pyspark.sql.functions import trim, col
df = df.withColumn('query', trim(col('query')))
上述示例对 dataframe 的 query 列的字符串做首尾空格去除操作,完整示例代码如下:
from pyspark.sql import SparkSession
from pyspark.sql.functions import trim, col
spark_session = SparkSession.builder \
.appName('knowledgedict-dataframe') \
.master('local') \
.getOrCreate()
df = spark_session.createDataFrame(
schema=['query', 'content'],
data=[
(' beijing ', ['product']),
(' tianjin ', ['product', 'article']),
(' shanghai ', ['article', 'person'])
]
)
df.show()
df = df.withColumn('query', trim(col('query')))
df.show()