Python 索引和列中的数据透视具有相同的列

Python 索引和列中的数据透视具有相同的列,python,pandas,pivot,crosstab,Python,Pandas,Pivot,Crosstab,我有数据框 data=pd.DataFrame({'year':[2010,2010,2010,2011,2011,2011], 'position':[1,2,3,1,2,3], 'name':['a','a','b','c','c','d'], 'points':[34,36,32,14,15,16], 'team':['A','B','C','C','B','A'], 'venue':['ny','ny','ny','cali','cali','cali']}) 我的代码: data.p

我有数据框

data=pd.DataFrame({'year':[2010,2010,2010,2011,2011,2011],
'position':[1,2,3,1,2,3],
'name':['a','a','b','c','c','d'],
'points':[34,36,32,14,15,16],
'team':['A','B','C','C','B','A'],
'venue':['ny','ny','ny','cali','cali','cali']})
我的代码:

data.pivot(index=['position','name'],columns='year',values='points')
它可以工作,但对于实际数据集,我必须将年份作为索引,否则它会显示重复索引,我们可以解决我需要索引中的年份,也可以使用支持重复的列:

data.pivot\u表(索引=['position','name',columns='year',values='points')
默认情况下,它将平均重复项。如果您喜欢不同的聚合,可以指定
aggfunc
,例如,取最大值:

data.pivot_表(索引=['position','name',columns='year',values='points',
aggfunc='max')