【发布时间】:2019-07-26 14:35:04
【问题描述】:
我正在使用 python 从谷歌云存储中读取一些文件
spark = SparkSession.builder.appName('aggs').getOrCreate()
df = spark.read.option("sep","\t").option("encoding", "UTF-8").csv('gs://path/', inferSchema=True, header=True,encoding='utf-8')
df.count()
df.show(10)
但是,我不断收到抱怨 df.show(10) 行的错误:
df.show(10)
File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/dataframe.py", line
350, in show
UnicodeEncodeError: 'ascii' codec can't encode character u'\ufffd' in position 162: ordinal not in range(128)
我搜索了一下,发现这似乎是一个常见错误,应该将解决方案添加到"UTF-8" 的编码中,就像我已经做的那样。由于这没有帮助,我仍然收到此错误,专家可以帮忙吗?提前致谢。
【问题讨论】:
-
哪个python版本?
-
@frankegoesdown Python 2.7 版
-
# -*- coding: utf-8 -*-将此字符串作为第一行添加到您的文件中 -
@frankegoesdown 我将该行添加到我的 py 的第一行,但仍然得到同样的错误。
标签: python csv apache-spark unicode pyspark