Python 3.x 如何将列读取为字节?

Python 3.x 如何将列读取为字节?,python-3.x,pandas,string,utf-8,Python 3.x,Pandas,String,Utf 8,我有一个pandas数据框架,其中一列由字符串组成,如下所示 import pandas as pd df = pd.DataFrame(...) df WORD 0 '0% de mati\xc3\xa8res grasses' 1 '115 apr\xc3\xa8s J.-C.' 对于数据帧中的每个字符串,我可以通过b'0%de mati\xc3\xa8res grasses.decode(“utf-8”

我有一个pandas数据框架,其中一列由字符串组成,如下所示

import pandas as pd
df = pd.DataFrame(...)
df
       WORD         
0      '0% de mati\xc3\xa8res grasses'       
1      '115 apr\xc3\xa8s J.-C.'          
对于数据帧中的每个字符串,我可以通过
b'0%de mati\xc3\xa8res grasses.decode(“utf-8”)
b'115 apr\xc3\xa8s J.-C.。decode(“utf-8”)
将它们读取为
字节。我想问一下如何解读这个专栏。我尝试了
df['WORD'].astype('bytes').str.decode(“utf-8”)
,但没有成功


非常感谢你的帮助

很难知道初始编码是什么,但它看起来像拉丁语-1:

df['WORD'].str.encode('latin-1').str.decode('utf-8')

0    0% de matières grasses
1           115 après J.-C.
Name: WORD, dtype: object

由于输出看起来很有意义,我想说这是正确的,但是如果要开始未知的编码,通常没有可靠的方法对文本进行重新编码。

您的列当前是字符串,您希望将其转换为字节,然后再转换回(正确编码的)字符串?或者它们最初是字节?列不是字节。这是一个解码错误的字符串。当读取到数据帧中时,您能否修复上游并将字符串正确解码为UTF-8?可能会显示代码。嗨@BallpointBen,我的列当前是字符串,我希望将其转换为字节,然后再转换回(正确编码的)字符串。