gpt4 book ai didi

python - 使用 Pandas 在python中循环遍历多个excel文件

转载 作者:行者123 更新时间:2023-11-28 21:46:47 26 4
gpt4 key购买 nike

我知道这种类型的问题一直被问到。但我无法找到执行此操作的最佳方法。

我编写了一个脚本,使用 pandas 重新格式化单个 excel 文件。效果很好。

现在我想遍历多个 excel 文件,执行相同的重新格式化,并将每个 excel 工作表中新重新格式化的数据一个接一个地放在底部。

我相信第一步是列出目录中的所有 excel 文件。有很多不同的方法可以做到这一点,所以我很难找到最好的方法。

下面是我目前用来导入多个 .xlsx 并创建列表的代码。

import os
import glob

os.chdir('C:\ExcelWorkbooksFolder')
for FileList in glob.glob('*.xlsx'):
print(FileList)

我不确定之前的 glob 代码是否真的创建了我需要的列表。

然后我很难理解从那里去哪里。下面的代码在 pd.ExcelFile(File) 处失败我相信我错过了一些东西....

# create for loop
for File in FileList:
for x in File:
# Import the excel file and call it xlsx_file
xlsx_file = pd.ExcelFile(File)
xlsx_file
# View the excel files sheet names
xlsx_file.sheet_names
# Load the xlsx files Data sheet as a dataframe
df = xlsx_file.parse('Data',header= None)
# select important rows,
df_NoHeader = df[4:]
#then It does some more reformatting.
'

非常感谢任何帮助

最佳答案

我解决了我的问题。我没有使用 glob 函数,而是使用 os.listdir 读取我所有的 excel 工作表,遍历每个 excel 文件,重新格式化,然后将最终数据附加到表的末尾。

#first create empty appended_data table to store the info.
appended_data = []


for WorkingFile in os.listdir('C:\ExcelFiles'):
if os.path.isfile(WorkingFile):

# Import the excel file and call it xlsx_file
xlsx_file = pd.ExcelFile(WorkingFile)
# View the excel files sheet names
xlsx_file.sheet_names
# Load the xlsx files Data sheet as a dataframe
df = xlsx_file.parse('sheet1',header= None)

#.... do so reformating, call finished sheet reformatedDataSheet
reformatedDataSheet
appended_data.append(reformatedDataSheet)
appended_data = pd.concat(appended_data)

就是这样,它完成了我想要的一切。

关于python - 使用 Pandas 在python中循环遍历多个excel文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37397037/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com