我的问题类似于this one,但我确实需要重命名列,因为我使用函数聚合数据:
def series(x):
return ','.join(str(item) for item in x)
agg = {
'revenue': ['sum', series],
'roi': ['sum', series],
}
df.groupby('name').agg(agg)
因此,我有一组名称相同的列:
在我删除更高的列级别后变得完全无法区分:
df.columns = df.columns.droplevel(0)
那么,我该如何为我的专栏保留唯一的名称?
答案 0 :(得分:2)
对map
列名称使用flatten
:
df.columns = df.columns.map('_'.join)