【发布时间】:2016-04-20 18:41:03
【问题描述】:
我希望展平此数据透视表,但我无法找到删除/隐藏/删除“ID”的多索引行的方法。
相关代码:
df = df [['B1','B2','B3','B4']]
df = pd.pivot_table(df,values=['BUCKET'],index=['ID'],columns=['TYPE'],aggfunc=len,fill_value='',margins=True)
产量:
BUCKET
TYPE B1 B2 B3 B4
ID
1 236 data1 data2 data3
2 323 data4 data5 data3
3 442 data6 data2 data4
4 543 data8 data2 data3
5 676 data1 data8 data4
以下行通过删除第一行让我更近了一步
df.columns = df.columns.droplevel(0)
产量:
TYPE B1 B2 B3 B4
ID
1 236 data1 data2 data3
2 323 data4 data5 data3
3 442 data6 data2 data4
4 543 data8 data2 data3
5 676 data1 data8 data4
我需要进一步展平数据透视表并删除“TYPE”行标题,将其替换为“ID”,并隐藏/删除前一个“ID”行,使其看起来像这样干净整洁:
ID B1 B2 B3 B4
1 236 data1 data2 data3
2 323 data4 data5 data3
3 442 data6 data2 data4
4 543 data8 data2 data3
5 676 data1 data8 data4
我试过用这些来操作列/行,但无济于事......建议?谢谢!
pd.melt(df,id_vars=['ID'])
results.columns = results.columns.get_level_values(1)
pivot_table.values.reset_index().values.tolist()
【问题讨论】:
-
df = df.drop('column_name', 1)?
标签: python pandas pivot-table