import pandas as pd #1.记录文件夹路径 2.将原表格构建到新表格中 3.找到所有需要合并的表,写进新表格 import os file_dir = 'C:\\Users\\CHI\\Desktop\\新建文件夹' #文件路径 new_filename = file_dir + '\\new_file.xlsx' #构建新的表格名称 file_list = os.listdir(file_dir) #找到文件路径下的所有表格名称,返回列表 new_list = [] for file in file_list: file_path = os.path.join(file_dir,file) #重构文件路径 print(file_path) dataframe = pd.read_excel(file_path) #将excel转换成DataFrame new_list.append(dataframe) #保存到新列表中 df = pd.concat(new_list) #多个DataFrame合并为一个 df.to_excel(new_filename,index=False) #写入到一个新excel表中
时间: 2024-04-14 07:25:57 浏览: 210
基于springboot教育资源共享平台源码数据库文档.zip
您的代码看起来基本上是正确的,它记录了文件夹路径,将原表格构建到新表格中,并找到所有需要合并的表格并写入新表格。
不过,我注意到您在代码中使用了`pd.concat()`来合并DataFrame,这是一个正确的方法。但是,根据您的描述,您可能想要将所有表格按行合并,即垂直合并。在这种情况下,您应该使用`pd.concat()`函数的`axis=0`参数。
下面是稍作修改后的代码:
```python
import pandas as pd
import os
file_dir = 'C:\\Users\\CHI\\Desktop\\新建文件夹' # 文件路径
new_filename = file_dir + '\\new_file.xlsx' # 构建新的表格名称
file_list = os.listdir(file_dir) # 找到文件路径下的所有表格名称,返回列表
new_list = []
for file in file_list:
file_path = os.path.join(file_dir, file) # 重构文件路径
print(file_path)
dataframe = pd.read_excel(file_path) # 将excel转换成DataFrame
new_list.append(dataframe) # 保存到新列表中
df = pd.concat(new_list, axis=0) # 多个DataFrame按行合并为一个
df.to_excel(new_filename, index=False) # 写入到一个新excel表中
```
这样修改后的代码应该能够按照您的要求将所有表格垂直合并并写入新的Excel表格中。如果您有任何其他问题,请随时提问。
阅读全文