Python如何对多个sheet表进行整合?

答案:python使用pandas读取excel多sheet并合并,通过pd.read_excel(sheet_name=None)获取所有sheet字典,再用pd.concat()整合为单一DataFrame。可添加source_sheet列标记数据来源,或指定sheet名称列表仅合并部分表。需注意各sheet列结构一致性,避免合并后产生NaN值。示例代码展示了完整流程,包括保留来源信息和筛选特定sheet的方法。

Python如何对多个sheet表进行整合?

Python可以通过 pandas 结合 openpyxlxlrd 等库来读取和操作 Excel 文件中的多个 sheet,并将它们整合成一个统一的数据结构。最常用的方法是把所有 sheet 的数据合并成一个 DataFrame,便于后续分析。

读取多个sheet并合并

使用 pandas 的 read_excel 方法,可以指定读取某个 sheet,或者一次性读取所有 sheet。通过设置 sheet_name=None,会返回一个字典,键是 sheet 名称,值是对应的数据框。

示例代码:

 import pandas as pd <h1>读取所有 sheet</h1><p>file_path = 'data.xlsx' all_sheets = pd.read_excel(file_path, sheet_name=None)</p><h1>将所有 sheet 的数据合并成一个 DataFrame</h1><p>combined_df = pd.concat(all_sheets.values(), ignore_index=True)</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/00968c3c2c15" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">Python免费学习笔记(深入)</a>”;</p><h1>查看结果</h1><p>print(combined_df.head()) 

保留 sheet 来源信息

如果需要知道每一行数据来自哪个 sheet,可以在合并前为每张表添加一个标识列。

Python如何对多个sheet表进行整合?

Sheet+

Excel和GoogleSheets表格AI处理工具

Python如何对多个sheet表进行整合?42

查看详情 Python如何对多个sheet表进行整合?

示例代码:

 import pandas as pd <p>file_path = 'data.xlsx' all_sheets = pd.read_excel(file_path, sheet_name=None) df_list = []</p><p>for sheet_name, df in all_sheets.items(): df['source_sheet'] = sheet_name  # 添加 sheet 名称作为新列 df_list.append(df)</p><h1>合并所有带来源标记的表</h1><p>combined_df = pd.concat(df_list, ignore_index=True) 

筛选特定 sheet 进行整合

若不需要全部 sheet,可手动指定 sheet 名称或根据条件过滤。

示例代码:

 # 只读取指定的 sheet selected_sheets = ['Sheet1', 'Sheet2'] selected_data = pd.read_excel(file_path, sheet_name=selected_sheets) combined_df = pd.concat(selected_data.values(), ignore_index=True) 

基本上就这些。只要掌握 pd.read_excel(sheet_name=None)pd.concat(),就能灵活处理多 sheet 整合问题。注意确保各 sheet 的列结构相似,否则合并后可能出现 NaN 值。不复杂但容易忽略细节。

上一篇
下一篇
text=ZqhQzanResources