我需要阅读具有多索引列的复杂Excel。我需要对数字进行一些处理,然后写入文件。 我的主要问题是大熊猫没有这种柱状结构。我可以解决阅读问题,但是写的文件看起来很糟糕。
df = pd.read_excel('hed_test.xlsx',
header=[0],
index_col=[0,1,2,3],
sheet_name="Matrix")
df.head()
t1 Unnamed: 5
name Unnamed: 2 Unnamed: 3
NaN name NaN NaN 480.0 500
r1 r2 440.0 71.6 98
460.0 -9000.0 77
480.0 -9000.0 -9000
我尝试了header = [0,1],但出现错误。注释掉标题,会产生相同的结果。
df索引和列为:
df.index
MultiIndex(levels=[[], ['name', 'r1'], ['r2'], [440.0, 460.0, 480.0]],
labels=[[-1, -1, -1, -1], [0, 1, 1, 1], [-1, 0, 0, 0], [-1, 0, 1, 2]],
names=[None, 'name', 'Unnamed: 2', 'Unnamed: 3'])
df.columns
Index(['t1', 'Unnamed: 5'], dtype='object')
写入文件时,使用以下代码:
df.to_excel("out.xlsx",
sheet_name='matrix')
我得到了以下的excel。
我如何从熊猫那里写出一个excel,看起来就像输入的excel?