在 Pandas 数据透视表中显示映射标签而不是代码
Posted
技术标签:
【中文标题】在 Pandas 数据透视表中显示映射标签而不是代码【英文标题】:Display mapped labels instead of codes in Pandas pivot table 【发布时间】:2018-08-22 09:11:01 【问题描述】:将主要分类变量的数据集中的一些数据透视表放在 Pandas 中,这些变量完全以数字代码表示,并带有随附的代码簿/字典。
我希望显示类别标签而不是数字代码。我在其他地方或 Pandas 文档中找不到此问题的答案。
例如...
gender_dict = 1: "Male", 2: "Female"
df['gender'].map(gender_dict)
pd.pivot_table(df, values=['location'], index=['gender'], aggfunc=len)
...而不是表格中显示 1 和 2 的性别,我希望它显示标签“男性”和“女性”
谢谢 乙
【问题讨论】:
df['gender'] = df['gender'].map(gender_dict)
【参考方案1】:
IIUC,创建数据透视表后即可:
df_out = pd.pivot_table(df, values=['location'], index=['gender'], aggfunc=len)
df_out.index = df_out.index.to_series().map(gender_dict)
【讨论】:
感谢您的回答。非常感谢。以上是关于在 Pandas 数据透视表中显示映射标签而不是代码的主要内容,如果未能解决你的问题,请参考以下文章