自动对pandas dataframe.dtypes中的所有字符串进行编码

时间:2018-08-22 12:08:18

标签: python pandas character-encoding

我想在屏幕上打印utf-8编码的dataframe.dtypes,因为许多dataframe的列都包含非Unicode字符。

现在对我有用的是,我循环各列的名称并使用类似以下内容:

col.encode("utf-8", "ignore")

但是我需要:

print(str(dataframe.dtypes)) 

因为它会打印出对齐的列列表以及每列的dtype。

谢谢

1 个答案:

答案 0 :(得分:1)

我希望这会有所帮助:

df = pd.DataFrame(data=[[0,0,0],[0,1,2]], columns=['one', 'two', b'\x80abc'])
df.columns = np.char.decode(df.columns.values.astype(str), encoding='UTF-8', errors='ignore')
print(str(df.dtypes))

我认为,唯一的方法是在打印dtypes之前转换列名称。但是您可以使用此功能np.char.decode来做到这一点。