【发布时间】:2021-06-16 19:42:46
【问题描述】:
我有一个带有 unicode 字符的 PySpark 数据框,如下所示:
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.createDataFrame([{"a": 0, "b": 1, "c": "somestring\u0001bla"}])
我想通过读取或写入新的 csv 文件来消除这种情况。我尝试了不同的选择:
option("encoding", "UTF-8")
option("nullValue", "\u0001")
option("encoding", "ISO-8859-1")
并使用各种编码选项进行阅读,但没有任何效果。有什么建议吗?
【问题讨论】:
-
怎么了?你期待什么?
-
@JosefZ 问题开始时,经过额外的操作和计算,我尝试将其保存到 json/parquet 并将其导入数据库。在这种情况下,由于数据库无法读取这些 Unicode 字符,因此摄取失败。在我的用例中,最简单的解决方案是在读取初始 .csv 文件时消除那些 unicode 字符(例如,将它们转换为空白值)。
标签: python csv pyspark unicode encoding