У меня есть DataFrame со столбцами multiIndex. Предположим, это так:
index = pd.MultiIndex.from_tuples([('one', 'a'), ('one', 'b'),
('two', 'a'), ('two', 'b')])
df = pd.DataFrame({'col': np.arange(1.0, 5.0)}, index=index)
df = df.unstack(1)
(я знаю, что это определение может быть более прямым). Теперь я хочу установить новый столбец уровня 0 на основе DataFrame. Например
df['col2'] = df['col'].applymap(lambda x: int(x < 3))
Это не работает. Единственный метод, который я нашел, - это отдельно добавить каждый столбец:
Панды: добавить столбец к мультииндексному столбцу данных
или какой-то запутанный процесс объединения.
Желаемый результат - новый столбец уровня 0 'col2'
с двумя вложенными столбцами уровня 1: 'a'
и 'b'
Любая помощь будет высоко ценится, спасибо.