Python - 如何合并文件夹中的所有excel文件

要合并文件夹中的所有 excel 文件,请使用 Glob 模块和append()方法。

假设以下是我们在桌面上的 excel 文件 -

销售1.xlsx

销售2.xlsx

注意- 您可能需要安装 openpyxl 和 xlrd 包。

首先,设置要合并的所有excel文件所在的路径。获取 excel 文件并使用 glob 读取它们 -

path = "C:\\Users\\amit_\\Desktop\\"

filenames = glob.glob(path + "\*.xlsx")

print('File names:', filenames)

接下来,为合并的输出 excel 文件创建一个空数据框,该文件将从上述两个 excel 文件中获取数据 -

outputxlsx = pd.DataFrame()

现在,可以看到实际过程,即首先使用 for 循环迭代 excel 文件。阅读 excel 文件,连接它们并附加数据 -

for file in filenames:

   df = pd.concat(pd.read_excel(file, sheet_name=None), ignore_index=True, sort=False)

   outputxlsx = outputxlsx.append(df, ignore_index=True)

示例

以下是代码 -

import pandas as pd

import glob

# getting excel files to be merged from the Desktop 

path = "C:\\Users\\amit_\\Desktop\\"

# read all the files with extension .xlsx i.e. excel 

filenames = glob.glob(path + "\*.xlsx")

print('File names:', filenames)

# empty data frame for the new output excel file with the merged excel files

outputxlsx = pd.DataFrame()

# for loop to iterate all excel files

for file in filenames:

   # using concat for excel files

   # after reading them with read_excel()

   df = pd.concat(pd.read_excel( file, sheet_name=None), ignore_index=True, sort=False)

   # appending data of excel files

   outputxlsx = outputxlsx.append( df, ignore_index=True)

print('Final Excel sheet now generated at the same location:')

outputxlsx.to_excel("C:/Users/amit_/Desktop/Output.xlsx", index=False)

输出结果

这将产生以下输出,即合并的 excel 文件将在同一位置生成 -

以上是 Python - 如何合并文件夹中的所有excel文件 的全部内容, 来源链接: utcz.com/z/362994.html

回到顶部