我正在读取一个仅包含如下数据的csv文件
Country State City
MÉXICO Neu Leon Monterrey
MÉXICO Chiapas ATLÁNTICO
我尝试在pyspark数据帧中读取编码为'utf8'和'ISO-8859-1'的文件,但值的变化如下所示-
在option(“ encoding”,“ utf-8”)
Country State City
M�XICO Neu Leon Monterrey
M�XICO Chiapas ATL�NTICO
在选项中(“编码”,“ ISO-8859-1”)
Country State City
M?XICO Neu Leon Monterrey
M?XICO Chiapas ATL?NTICO
这是spark读取语句
spark.read.format("csv").option("quote", "\"").option("escape", "\"").option('multiLine', True).option("encoding", "ISO-8859-1").option("header", "true").load("country.csv")
option(“ encoding”,“ mbcs”)和option(“ encoding”,“ ansi”)给出错误。
我该怎么做才能保留输入文件中的原始文本?预先感谢
答案 0 :(得分:0)
无需编码即可将其读入,然后创建一个新列:
df.withColumn("some_col_name", decode(col("column_name"), "ISO-8859-1"))
# One of these will give you what you need. ('US-ASCII', 'ISO-8859-1', 'UTF-8', 'UTF-16BE', 'UTF-16LE', 'UTF-16')