我有一个包含索引和列的简单二维数据框。我需要按照我的同事的布局将其导出到Excel文件中,例如使用具有2个层级的多索引列的单行。第一层对应于我的数据框索引,第二层对应于我的数据框列。
我的数据框:
Ah-Step Wh-Step T[°C]
C-Rate
1C -30.133791 -63.016814 30.86355
2C -25.557269 -51.937002 37.10111
3C -20.338776 -40.632206 43.84840
4C -8.023851 -16.609749 45.63529
5C -3.868425 -8.111969 46.74843
我需要的是:
1C 2C 3C \
Ah-Step Wh-Step T[°C] Ah-Step Wh-Step T[°C] Ah-Step
0 -30.133791 -63.016814 30.86355 -25.557269 -51.937002 37.10111 -20.338776
4C 5C \
Wh-Step T[°C] Ah-Step Wh-Step T[°C] Ah-Step Wh-Step
0 -40.632206 43.8484 -8.023851 -16.609749 45.63529 -3.868425 -8.111969
T[°C]
0 46.74843
我目前的解决方案(我的数据框由“Summary
”变量持有,“writer
”用于导出到Excel):
m_cols = pd.MultiIndex.from_product([Summary.index.tolist(),
Summary.columns.tolist()])
df = pd.DataFrame(data=pd.np.zeros((1,15)),
columns=m_cols)
for c in Summary.index:
for k in Summary.columns:
df[c,k].iloc[0] = Summary.loc[c,k]
df.to_excel(writer,sheet_name='Summary')
我的解决方案缺乏对变化的抵抗力,也不够优雅。
是否有一种内嵌方法可以做到这样,而不需要使用for循环和预先分配一个带有零的行?