Aplatir DataFrame avec multi-colonnes d'index

Je voudrais convertir une Pandas DataFrame qui est dérivée à partir d'un tableau croisé dynamique dans une rangée de la représentation comme indiqué ci-dessous.

C'est là où j'en suis:

import pandas as pd
import numpy as np
df = pd.DataFrame({
    'goods': ['a', 'a', 'b', 'b', 'b'],
    'stock': [5, 10, 30, 40, 10],
    'category': ['c1', 'c2', 'c1', 'c2', 'c1'],
    'date': pd.to_datetime(['2014-01-01', '2014-02-01', '2014-01-06', '2014-02-09', '2014-03-09'])
})
# we don't care about year in this example
df['month'] = df['date'].map(lambda x: x.month)
piv = df.pivot_table(["stock"], "month", ["goods", "category"], aggfunc="sum")
piv = piv.reindex(np.arange(piv.index[0], piv.index[-1] + 1))
piv = piv.ffill(axis=0)
piv = piv.fillna(0)
print piv

qui résultats dans

stock            
goods        a       b    
category    c1  c2  c1  c2
month                     
1            5   0  30   0
2            5  10  30  40
3            5  10  10  40

Et c'est là que je veux faire.

goods category month stock
    a       c1     1     5
    a       c1     2     0
    a       c1     3     0
    a       c2     1     0
    a       c2     2    10
    a       c2     3     0
    b       c1     1    30
    b       c1     2     0
    b       c1     3    10
    b       c2     1     0
    b       c2     2    40
    b       c2     3     0

Auparavant, J'ai utilisé

piv = piv.stack()
piv = piv.reset_index()
print piv

pour se débarrasser de la multi-index, mais cette résultats dans ce parce que j'ai croisé dynamique maintenant sur deux colonnes (["goods", "category"]):

      month category stock    
goods                    a   b
0         1       c1     5  30
1         1       c2     0   0
2         2       c1     5  30
3         2       c2    10  40
4         3       c1     5  10
5         3       c2    10  40

Personne ne sait comment je peux me débarrasser de la multi-index dans la colonne et obtenir le résultat dans un DataFrame de l'illustré format?

OriginalL'auteur orange | 2014-12-20