DataFrame com MultiIndex para ditar

Eu tenho um quadro de dados com um MultiIndex. Gostaria de saber se eu criei o quadro de dados da maneira correta (veja abaixo).

             01.01  02.01  03.01  04.01
bar total1     40     52     18     11
    total2     36     85      5     92
baz total1     23     39     45     70
    total2     50     49     51     65
foo total1     23     97     17     97
    total2     64     56     94     45
qux total1     13     73     38      4
    total2     80      8     61     50

df.index.values resulta em:

array([('bar', 'total1'), ('bar', 'total2'), ('baz', 'total1'),
       ('baz', 'total2'), ('foo', 'total1'), ('foo', 'total2'),
       ('qux', 'total1'), ('qux', 'total2')], dtype=object)

df.index.get_level_values resulta em:

<bound method MultiIndex.get_level_values of MultiIndex(levels=[[u'bar', u'baz', u'foo', u'qux'], [u'total1', u'total2']],
           labels=[[0, 0, 1, 1, 2, 2, 3, 3], [0, 1, 0, 1, 0, 1, 0, 1]],names=[]

Em última análise, estou procurando transformar o df em um ditado de dicionários, de modo que a primeira chave do ditado seja uma de ['bar', 'baz', 'foo', 'qux'] e os valores sejam as datas e o dicionário interno seja criado de 'total1' e 'totals2' como chave e os valores são os números inteiros de df. Explicação alternativa, por exemplo, se dict1 é o dict, então chamando:

dict1['bar']

resultaria na saída:

{u'bar':{'01.01':{'total1':40,'total2':36},'02.01':{'total1':52,'total2':85},'03.01':{'total1':18,'total2':5},'04.01':{'total1':11,'total2':92} } }

Como e o que eu precisaria alterar para conseguir isso? Este é um problema de indexação?

questionAnswers(1)

yourAnswerToTheQuestion