编写此代码时:
df['new'] = df.astype(str).apply(' '.join, axis=1)
这是导致此的原因
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-9: ordinal not in range(128)
df包含希腊字符。
在阅读了类似问题中的编码后,我无法将其应用于这种情况,并通过以下方式进行了处理:
import sys
reload(sys)
sys.setdefaultencoding('utf8')
虽然有效。每个人都不支持使用此功能。由于稍后可能会导致错误,因此我希望您针对这种情况查看您的建议。
数据是通过DataFrame.from_records
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.from_records.html导入的,因此它不能接受编码作为参数。
答案 0 :(得分:0)
尝试简单地编码字符串:
df['new'] = df.astype(str).apply(' '.join, axis=1).encode("utf-8")
并将其添加到代码顶部
# -*- coding: utf-8 -*-
答案 1 :(得分:-2)
我发现原因是我们的远程服务器不支持中文。所以,我把所有的印刷内容都改成了英文。