【问题标题】:pandas turn mysql utf-8 into asciipandas 将 mysql utf-8 转为 ascii
【发布时间】:2017-08-11 11:21:46
【问题描述】:

我有一个 mysql utf-8 通用 ci 表,但是当我将它加载到 pandas 数据框时,我得到了错误:

UnicodeEncodeError: 'ascii' codec can't encode character '\xe4' in position 66: ordinal not in range(128) 
  args = ('ascii', ' t...obile Android 1.0 0.0 0.0 ', 66, 67, 'ordinal not in range(128)') 
  encoding = 'ascii'

这是字符 ä 在 varchar(255) 字段中的行。

为什么将数据转换为 ascii,我该如何解决这个问题?

【问题讨论】:

  • 你似乎来自ASCII,而不是UTF8。 Ascii 只有 1..128,其中 \x84 是 132。请提供 SHOW CREATE TABLE 以供进一步讨论。并深入了解 Pandas 到底在做什么。

标签: python mysql pandas utf-8


【解决方案1】:

如果您使用的是python 2.7 在代码的开头,放这个

import sys
reload(sys)
sys.setdefaultencoding('utf8')

应该可以。

【讨论】:

  • 我正在使用 python 3
  • 尝试设置encoding ='utf-8',报错说明你当前的编码设置为ascii
猜你喜欢
  • 2019-10-31
  • 2012-08-04
  • 2011-06-26
  • 1970-01-01
  • 2012-10-29
  • 1970-01-01
  • 2011-06-19
  • 2017-11-20
  • 2015-08-06
相关资源
最近更新 更多