Получение иерархического многоуровневого индекса в панде

Я пытаюсь создать многоуровневый индекс в пандах, но когда я печатаю фрейм данных, я вижу что-то вроде этого.

                                           ask   bid
time                type mat        strk            
2014-03-31 13:30:00 C    2014-04-19 1850  32.0  30.6
2014-03-31 13:35:00 C    2014-04-19 1850  32.8  31.2
2014-03-31 13:40:00 C    2014-04-19 1850  31.9  29.9
2014-03-31 13:45:00 C    2014-04-19 1850  31.6  30.1
2014-03-31 13:50:00 C    2014-04-19 1850  32.6  31.2
2014-03-31 13:55:00 C    2014-04-19 1850  33.6  32.1
2014-03-31 14:00:00 C    2014-04-19 1850  34.4  33.0
2014-03-31 14:05:00 C    2014-04-19 1850  33.5  31.9
2014-03-31 14:10:00 C    2014-04-19 1850  34.0  32.2
.....

Вышесказанное является результатом

df.set_index(['time', 'type', 'mat', 'strk'], inplace=True)

Теперь я бы ожидал увидеть что-то более иерархическое, как это

                                           ask   bid
time                type mat        strk            
2014-03-31 13:30:00 C    2014-04-19 1850  32.0  30.6
                                    1860  aaaa  bbbb
                         2014-05-17 1850  xxxx  yyyy
                                    1860  xxxx  yyyy
                    P    2014-04-19 1850  mmmm  nnnn
                                    1860  aaaa  bbbb
                         2014-05-17 1850  xxxx  yyyy
                                    1860  xxxx  yyyy 
2014-03-31 13:35:00 C    2014-04-19 1850  32.8  31.2
2014-03-31 13:40:00 C    2014-04-19 1850  31.9  29.9
2014-03-31 13:45:00 C    2014-04-19 1850  31.6  30.1
2014-03-31 13:50:00 C    2014-04-19 1850  32.6  31.2
2014-03-31 13:55:00 C    2014-04-19 1850  33.6  32.1
2014-03-31 14:00:00 C    2014-04-19 1850  34.4  33.0
2014-03-31 14:05:00 C    2014-04-19 1850  33.5  31.9
2014-03-31 14:10:00 C    2014-04-19 1850  34.0  32.2

У меня есть несколько строк ниже для того же времени - 2014-03-31 13:30:00 Но я не уверен, почему я не вижу этого. Пробовал без этих вариантов на месте. Тем не менее я вижу ту же проблему. Но в другом месте я вижу эту иерархию, когда выполняю set_index на другом фрейме данных. Не уверен, что мне здесь не хватает.

1 ответ

Решение

Сортировка данных должна помочь

df.sort()
Другие вопросы по тегам