微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

透视具有重复索引的表

如何解决透视具有重复索引的表

我想旋转这张表:

    Year    County  Sex     rate
0   2006    Alameda Male    45.80
1   2006    Alameda Female  54.20
2   2006    Alpine  Male    52.81
3   2006    Alpine  Female  47.19
4   2006    Amador  Male    49.97
5   2006    Amador  female  50.30

我想要的输出是:

Year    County  Male  Female
2006    Alameda 45.80 54.20
2006    Alameda 52.81 47.19
2006    Alpine  49.97 50.30

我尝试这样做:

sex_rate=g.pivot(index="County",columns='Year',values='rate')

但我不断收到此错误

ValueError: Index contains duplicate entries,cannot reshape

请帮忙。我是 Python 新手

解决方法

我认为您想要index=['Year','County'],而不仅仅是index='County'。由于您将两列传递给 index,您可能需要使用 pivot_table 而不是 pivot

df.pivot_table(index=['Year','County'],columns='Sex',values='rate'
              ).reset_index()

输出:

Sex  Year   County  Female   Male
0    2006  Alameda   54.20  45.80
1    2006   Alpine   47.19  52.81
2    2006   Amador   50.30  49.97

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。