pandas以ASCII忽略编码写入csv
Pandas的CSV解析器(http://pandas.pydata.org/pandas-docs/stable/generated/pandas.io.parsers.read_csv.html)支持多种编码方式:
import pandas
data = pandas.read_csv(myfile, encoding='utf-8', quotechar='"', delimiter=',')
我该如何在我的数据框中实现ASCII忽略编码的情况呢?
encode('ascii', 'ignore')
1 个回答
1
Pandas好像不支持这样做。我在用pandas读取之前,需要先处理一下我的CSV文件:
decoded = codecs.decode(myfile.read(), "utf-8", "ignore")
encoded = codecs.encode(decoded, "utf-8", "ignore") #probably superfluous
fakefile = StringIO.StringIO(encoded)
data = pandas.read_csv(fakefile, encoding="utf-8")
如果你的CSV文件非常大,这样做可能会很麻烦,不过你可以一次读取CSV文件的一部分。