问题描述
我想旋转这张表:
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