我有一个pandas数据帧(python 2.7),其中包含一个u' \ u2019'这不让我提取csv我的结果。
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019' in position 180: ordinal not in range(128)
有没有办法查询数据框并用另一个字符替换这些字符?
答案 0 :(得分:1)
保存到文件时尝试使用不同的编码(Python 2.x的pandas中的默认值为ascii,这就是为什么你得到错误,因为它无法处理unicode字符):
df.to_csv(path, encoding='utf-8')
答案 1 :(得分:0)
我没有设法导出整个文件。但是,我设法将该行标识为导致问题的字符并将其消除
faulty_rows = []
for i in range(len(outcome)):
try:
test = outcome.iloc[i]
test.to_csv("/Users/john/test/test.csv")
except:
pass
faulty_rows.append(i)
print i
tocsv = tocsv.drop(outcome.index[[indexes]])
tocsv.to_csv("/Users/john/test/test.csv")