我有一个从SDSS数据库中获取的数据框。示例数据在这里。
我想删除字符' b'来自data['class']
。我试过了
data['class'] = data['class'].replace("b','')
但我没有得到结果。
答案 0 :(得分:6)
您正在使用字节字符串。您可以考虑str.decode
:
data['class'] = data['class'].str.decode('utf-8')
答案 1 :(得分:2)
进一步解释:
df = pd.DataFrame([b'123']) # create dataframe with b'' element
现在我们可以致电
df[0].str.decode('utf-8') # returns a pd.series applying decode on str succesfully
df[0].decode('utf-8') # tries to decode the series and throws an error
基本上你正在使用.str()将它应用于所有元素。它也可以这样写:
df[0].apply(lambda x: x.decode('utf-8'))