Частично расплавлен иерархический индекс - PullRequest
0 голосов
/ 27 сентября 2019

У меня есть датафрейм df, который я хочу выглядеть как df2.

yesterday = datetime.datetime.today - datetime.timedelta(days=1)
cols = pd.MultiIndex.from_product(iterables=[['A','B'],['1','2']], names=['letter','number'])
idx = pd.DatetimeIndex(start=yesterday, periods=2, freq='H')
df = pd.DataFrame(columns=cols, index=idx, data=[[1,2,3,4],[5,6,7,8]])

letter                      A     B   
number                      1  2  1  2
2019-09-26 07:45:49.659873  1  2  3  4
2019-09-26 08:45:49.659873  5  6  7  8

df2 = pd.DataFrame(columns=['letter', '1', '2'], index=idx.append(idx), data=[['A',1,2],['A',5,6],['B',3,4],['B',7,8]])

                           letter  1  2
2019-09-26 07:45:49.659873      A  1  2
2019-09-26 08:45:49.659873      A  5  6
2019-09-26 07:45:49.659873      B  3  4
2019-09-26 08:45:49.659873      B  7  8

Так что это что-то вроде плавления или reset_index, но я не нашел волшебную комбинацию, чтобы сделать это на гораздо большем кадре данных на практике.Я хочу изменить уровень 0 столбцов в неотклоненный столбец, но оставить уровень 1 без изменений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...