Сначала используйте get_level_values
, затем unique
и, наконец, преобразуйте в list
:
L = df.index.get_level_values('date').unique().tolist()
print (L[:10])
[Timestamp('2013-01-02 00:00:00'), Timestamp('2013-01-03 00:00:00'),
Timestamp('2013-01-04 00:00:00'), Timestamp('2013-01-07 00:00:00'),
Timestamp('2013-01-08 00:00:00'), Timestamp('2013-01-09 00:00:00'),
Timestamp('2013-01-10 00:00:00'), Timestamp('2013-01-11 00:00:00'),
Timestamp('2013-01-14 00:00:00'), Timestamp('2013-01-15 00:00:00')]
Для чистого времени Python добавьте to_pydatetime
:
L = df.index.get_level_values('date').unique().to_pydatetime().tolist()
print (L[:10])
[datetime.datetime(2013, 1, 2, 0, 0), datetime.datetime(2013, 1, 3, 0, 0),
datetime.datetime(2013, 1, 4, 0, 0), datetime.datetime(2013, 1, 7, 0, 0),
datetime.datetime(2013, 1, 8, 0, 0), datetime.datetime(2013, 1, 9, 0, 0),
datetime.datetime(2013, 1, 10, 0, 0), datetime.datetime(2013, 1, 11, 0, 0),
datetime.datetime(2013, 1, 14, 0, 0), datetime.datetime(2013, 1, 15, 0, 0)]