TypeError: pivot_table() got multiple values for keyword argument 'values'

Kumar Gaurav picture Kumar Gaurav · Feb 9, 2017 · Viewed 13k times · Source

I am using Python2.7. I am learning pandas and was implementing pivot_table. While implementing the example given in pivot_table documentation :

    raw_data = {'A':['foo','foo','foo','foo','foo','bar','bar','bar','bar'],
        'B':['one','one','one','two','two','one','one','two','two'],
        'C':['small','large','large','small','small','large','small','small','large'],
        'D':[1,2,2,3,3,4,5,6,7]}
    df = pd.DataFrame(raw_data)
    df.pivot_table(df,index = ['A','B'], values = 'D',columns = 'C', aggfunc = 'sum')

When run, I get the following error : TypeError: pivot_table() got multiple values for keyword argument 'values'

Can anyone tell why this is happening ?

Answer

jezrael picture jezrael · Feb 9, 2017

You need remove df:

              #here      
df.pivot_table(df,index = ['A','B'], values = 'D',columns = 'C', aggfunc = 'sum')

a = df.pivot_table(index = ['A','B'], values = 'D',columns = 'C', aggfunc = 'sum')
print (a)
C        large  small
A   B                
bar one    4.0    5.0
    two    7.0    6.0
foo one    4.0    1.0
    two    NaN    6.0