首页 > 解决方案 > Python:如何将 Excel 工作表从多个 Excel 文件复制到一个 Excel 文件,其中包含来自其他 Excel 文件的所有工作表

问题描述

这是我第一次使用 pandas,我有多个 excel 文件,我想使用 python pandas 将所有文件合并到一个 Excel 文件中。

我设法将每个 excel 文件中第一个工作表的内容合并到一个新的 excel 文件中的一个工作表中,如下图所示: 组合工作表在一个工作表中

我写了这段代码来实现这个:

import glob
import pandas as pd
path = "C:/folder"
file_identifier = "*.xls"
all_data = pd.DataFrame()
for f in glob.glob(path + "/*" + file_identifier):
   df = pd.read_excel(f)
   all_data = all_data.append(df,ignore_index=True)

writer = pd.ExcelWriter('combined.xls', engine='xlsxwriter')    
all_data.to_excel(writer, sheet_name='Summary Sheet') 
writer.save()
file_df = pd.read_excel("C:/folder/combined.xls")
# Keep only FIRST record from set of duplicates
file_df_first_record = file_df.drop_duplicates(subset=["Test summary", "Unnamed: 1", "Unnamed: 2", 
"Unnamed: 3"], keep="first")
file_df_first_record.to_excel("filtered.xls", index=False, sheet_name='Summary Sheet')

但我有两个问题:

  1. 如何删除具有“未命名”的单元格,如上图所示
  2. 如何从所有其他 Excel 文件中复制其他工作表(每个 Excel 文件中的第二个工作表,而不是第一个工作表)并将其放入一个具有多个工作表和不同学生姓名的 Excel 文件中,如图所示。

一个excel文件中的所有工作表

所以我设法将所有 Excel 文件中的 worksheet1 合并到一张工作表中,但现在我想将 A、B、C、D、E 工作表复制到一个 Excel 文件中,该文件在其他 Excel 文件中包含所有其他剩余工作表。

我拥有的每个 Excel 文件看起来都像这个 单一的 excel 文件

标签: pythonexcelpandas

解决方案


推荐阅读