【发布时间】:2018-01-09 22:29:08
【问题描述】:
我有 pandas 数据框,其中列类型显示为 object 但是当我尝试转换为字符串时,
df['column'] = df['column'].astype('str')
UnicodeEncodeError 被抛出:
*** UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)
我的下一个方法是处理编码部分:
df['column'] = filtered_df['column'].apply(lambda x: x.encode('utf-8').strip())
但这会产生以下错误:
*** AttributeError: 'float' object has no attribute 'encode'
将此列转换为字符串的最佳方法是什么。
列中的字符串示例
Thank you :)
Thank You !!!
responsibilities/assigned job.
【问题讨论】:
-
您仍然可以将 str.accessors 与对象列一起使用。试试:
df['column'].str.encode('utf-8').str.decode('latin-1').astype(str) -
试过但给了我
*** UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11: ordinal not in range(128) -
我想看看一些数据。请看看你是否可以用一些玩具数据来重现这个。
标签: python-2.7 pandas utf-8