Item AddDate COUNT(Number)
Item 3 2021-01-05 111
Item 3 2021-01-06 223
Item 3 2021-01-07 44
Item 3 2021-01-26 431
Item 3 2021-01-25 12
Item 3 2020-12-25 43
Item 1 2021-01-19 53
Item 1 2021-01-18 12
Item 2 2021-04-06 15
Item 2 2020-11-30 132
我有一个如上所示的 Pandas 数据框(类型为 <class 'pandas.core.frame.DataFrame'>
)
我试图通过这样做来生成一个pivot_table
df = df.pivot_table(
index='AddDate',
columns=['AddDate', 'Item'],
values='COUNT(Number)',
fill_value=0,
aggfunc=sum)
这给了我Duplicated level name: \"AddDate\", assigned to level 1, is already used for level 0."
我尝试将 AddDate
列名称更改为其他名称,但没有解决问题。
有什么帮助吗?
答案 0 :(得分:1)
似乎存在错误分配的参数 columns=['AddDate', 'Item']
,因此使用 AddDate
来生成新的索引值 (index='AddDate'
),而且 MultiIndex
也用于 AddDate, Item
} 组合(columns=['AddDate', 'Item']
)。
我认为你只需要columns='Item'
:
df = df.pivot_table(
index='AddDate',
columns='Item',
values='COUNT(Number)',
fill_value=0,
aggfunc=sum)