2017-02-09 3 views
3

Я использую Python2.7. Я изучаю панды и реализую pivot_table. При реализации данного примера, приведенного в pivot_table documentation:ТипError: pivot_table() получил несколько значений для значений аргументов ключевого слова '

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') 

При запуске, я получаю следующее сообщение об ошибке: TypeError: pivot_table() есть несколько значений аргумента ключевого слова «значения»

Может кто-нибудь сказать, почему это происходит?

ответ

6

Вы должны удалить 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 
+1

Чтобы ответить на вопрос «почему это происходит», проходя ФР в таком положении делает параметр значения. Таким образом, технически параметр значений предоставлялся дважды – Teliov

+0

Да, это typo 'pd' -' df', но действительно плохой поиск ошибки :( – jezrael

Смежные вопросы