Python,Pandas将Excel文件合并为1,文件名称为A列

我将Excel电子表格合并到1个电子表格中,并且要在电子表格的第一列合并时插入电子表格的文件名。

要组合的Excel文件是:20170801.xlsx,20170901.xlsx,20171001.xlsx

这是我有的代码:

working_folder = 'c:\\abc\\' files = os.listdir(working_folder) files_xls = []; for f in files: if f.endswith(".xlsx"): fff = working_folder + f files_xls.append(fff) df = pd.DataFrame(); for f in files_xls: data = pd.read_excel(f, skip_footer=0) file_date = basename(f).replace(".xlsx", "") #data.index = pd.MultiIndex.from_tuples([("", file_date)] * len(data)) data.index = pd.MultiIndex.from_tuples([(file_date)] * len(data)) df = df.append(data) df.to_excel(working_folder + 'final.xls', merge_cells = False) 

问题在于data.index = pd.MultiIndex …行。

当我使用:

 data.index = pd.MultiIndex.from_tuples([(file_date)] * len(data)) 

它产生一个像这样的表格:

在这里输入图像说明

当我使用:

data.index = pd.MultiIndex.from_tuples([(“”,file_date)] * len(data))

它产生了一个更好看的电子表格,但一个空列像这样: 在这里输入图像说明

不要使用MultiIndex,我怎么能有一个最终的电子表格看起来像这样?

在这里输入图像说明

谢谢。

我相信你不需要MultiIndex ,只是改变:

 data.index = pd.MultiIndex.from_tuples([(file_date)] * len(data)) 

至:

 data.index = [file_date] * len(data)