python – Pandas Dataframe – 多级索引/列
发布时间:2020-12-20 11:57:36 所属栏目:Python 来源:网络整理
导读:我在组织数据帧时遇到了一些困难.我认为这很简单,但我已经坚持了这么久: 这是df1: Output Energy,(Wh/h) Lights (Wh) Lights+Media (Wh) Total Usage (h) Hour 1 0.0 0.0 0.0 0.0 2 0.0 0.0 0.0 0.0 3 0.0 0.0 0.0 0.0 4 0.0 0.0 0.0 0.0 5 0.0 0.0 0.0 0
我在组织数据帧时遇到了一些困难.我认为这很简单,但我已经坚持了这么久:
这是df1: Output Energy,(Wh/h) Lights (Wh) Lights+Media (Wh) Total Usage (h) Hour 1 0.0 0.0 0.0 0.0 2 0.0 0.0 0.0 0.0 3 0.0 0.0 0.0 0.0 4 0.0 0.0 0.0 0.0 5 0.0 0.0 0.0 0.0 我希望这个转换为易用性: df2 =df1.T 给我: Hour 1 2 3 4 Output Energy,(Wh/h) 0.0 0.0 0.0 0.0 Lights (Wh) 0.0 0.0 0.0 0.0 Lights+Media (Wh) 0.0 0.0 0.0 0.0 Total Usage (h) 0.0 0.0 0.0 0.0 Lights (h) 0.0 0.0 0.0 0.0 Light+Media (h) 0.0 0.0 0.0 0.0 但最终,我希望它看起来像这样: Hour 1 2 3 4 Output Energy,(Wh/h) 0.0 0.0 0.0 0.0 Lights (Wh) 0.0 0.0 0.0 0.0 CU-101 Lights+Media (Wh) 0.0 0.0 0.0 0.0 Total Usage (h) 0.0 0.0 0.0 0.0 Lights (h) 0.0 0.0 0.0 0.0 Light+Media (h) 0.0 0.0 0.0 0.0 我一直试图将’Cu-101’添加为多级列,但无济于事.我应该在转置之前或之后添加它吗? 此外,移动’小时’ – 我将此列设置为索引,但如何将其移动到新的水平? 解决方法
你可以使用
MultiIndex.from_arrays :
df.index = pd.MultiIndex.from_arrays([['Hour'] * len(df.index),df.index],names=(None,None)) df.columns = pd.MultiIndex.from_arrays([['CU-101'] * len(df.columns),df.columns],None)) print (df.T) Hour 1 2 3 4 5 CU-101 Output Energy,(Wh/h) 0.0 0.0 0.0 0.0 0.0 Lights (Wh) 0.0 0.0 0.0 0.0 0.0 Lights+Media (Wh) 0.0 0.0 0.0 0.0 0.0 Total Usage (h) 0.0 0.0 0.0 0.0 0.0 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |