如何使用python将一个Execl表格中有两个不一样的sheet表格,把这两个表格中相同的数据提取出来生成一个新的sheet表格
安装这个库openpyxl
# 打开Excel文件
wb = openpyxl.load_workbook('..')
# 获取需要操作的Sheet
sheet1 = wb['Sheet1']
sheet2 = wb['Sheet2']
# 创建新的Sheet用于存储相同数据
new_sheet = wb.create_sheet('..')
# 提取相同的数据并写入新的Sheet
for row1 in sheet1.iter_rows():
for row2 in sheet2.iter_rows():
if row1[0].value == row2[0].value: # 假设比较的列为第一列
new_sheet.append([cell.value for cell in row1])
# 保存结果到新的Excel文件
wb.save('..')
【以下回答由 GPT 生成】
如果要使用Python将一个Excel表格中的两个不一致的sheet表格进行整理,并从中提取相同的数据,可以按照以下步骤进行:
步骤1: 安装所需的库 确保已经安装了以下库:pandas
和openpyxl
。如果未安装,可以使用以下命令来安装:
pip install pandas openpyxl
步骤2: 导入所需的库 在Python中,导入pandas
和openpyxl
库,以及其他可能需要的库:
import pandas as pd
from openpyxl import load_workbook
步骤3: 加载Excel表格 使用pandas
的read_excel()
函数来加载Excel表格的数据。假设Excel表格的路径为input.xlsx
,并且两个sheet分别命名为Sheet1
和Sheet2
。
# 加载Excel表格
df1 = pd.read_excel('input.xlsx', sheet_name='Sheet1')
df2 = pd.read_excel('input.xlsx', sheet_name='Sheet2')
步骤4: 提取相同的数据 使用pandas
的merge()
函数来提取两个sheet中相同的数据。假设提取的列名为col1
和col2
。
# 提取相同的数据
merged_df = pd.merge(df1, df2, on=['col1', 'col2'], how='inner')
步骤5: 生成新的sheet表格 将提取到的数据生成一个新的sheet表格,并保存为一个新的Excel文件。假设新的sheet表格的名称为CombinedSheet
。
# 生成新的sheet表格
output_file = 'output.xlsx'
with pd.ExcelWriter(output_file, engine='openpyxl') as writer:
writer.book = load_workbook(output_file)
merged_df.to_excel(writer, sheet_name='CombinedSheet', index=False)
以上就是使用Python整理两个不一致的sheet表格,并提取相同数据生成新的sheet表格的具体解决方案。如果有任何问题,请随时提问。
【相关推荐】