【发布时间】:2026-01-30 19:50:01
【问题描述】:
假设我有一个pandas.DataFrame,列上的分层索引如下:
import pandas as pd
columns = pd.MultiIndex.from_product([list('AB'), list('ab')])
df = pd.DataFrame(np.arange(8).reshape((2,4)), columns=columns)
print df
输出[1]:
A B
a b a b
0 0 1 2 3
1 4 5 6 7
我想展平列索引,使其如下所示:
Aa Ab Ba Bb
0 0 1 2 3
1 4 5 6 7
我试过了
def flatten(col):
col.name = ''.join(col.name)
return col
df.apply(f)
但这只是忽略了新列的修改名称。
【问题讨论】: