I'm getting a KeyError: "... not in index"
while using pivot_table of pandas. Here is sample code:
arrays = [['bar', 'bar', 'foo', 'foo'],
['one', 'two', 'one', 'two'], ['A','A','B','B']]
tuples = list(zip(*arrays))
index = pd.MultiIndex.from_tuples(tuples, names=['first', 'second', 'third'])
values = np.array([[1,2,3,4],[5,6,7,8]])
df = pd.DataFrame(values.T, index=index, columns = ['0', '1'])
# here comes the pivot_table, this one works, it has 'colums'
df.pivot_table(index = ['first', 'second'], columns = 'third', aggfunc = 'sum')
#this one works, it has 'margins'
df.pivot_table(index = ['first', 'second'], aggfunc = 'sum', margins=True)
#this one fails, it has both 'columns' and 'margins'
df.pivot_table(index = ['first', 'second'], columns = 'third', aggfunc = 'sum', margins=True)
KeyError Traceback (most recent call last)
...
KeyError: "['first' 'second'] not in index"
Somehow columns and margins are not compatible.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.