用python对文件中所有excel表格按照一列排序后提取该列数据按照文件名添加到新的excel表格
时间: 2024-04-08 19:34:32 浏览: 288
python读取excel指定列数据并写入到新的excel方法
5星 · 资源好评率100%
您可以使用Python的pandas库来对文件中的所有Excel表格进行处理。下面是一个示例代码,演示了如何按照一列排序后提取该列数据,并按照文件名将数据添加到新的Excel表格中:
```python
import pandas as pd
import os
# 定义输入文件夹路径和输出文件路径
input_folder_path = 'your_input_folder_path'
output_file_path = 'your_output_file_path.xlsx'
# 获取输入文件夹中所有的Excel文件
excel_files = [file for file in os.listdir(input_folder_path) if file.endswith('.xlsx')]
# 创建一个空的DataFrame来存储所有数据
all_data = pd.DataFrame()
# 遍历每个Excel文件
for file in excel_files:
# 构建完整的文件路径
file_path = os.path.join(input_folder_path, file)
# 读取Excel文件中的数据
df = pd.read_excel(file_path)
# 提取需要排序的列(这里假设是第一列)
column_to_sort = df.iloc[:, 0]
# 对列进行排序
sorted_column = column_to_sort.sort_values()
# 获取文件名(不包含扩展名)
file_name = os.path.splitext(file)[0]
# 将排序后的列添加到all_data中,并使用文件名作为列名
all_data[file_name] = sorted_column
# 将所有数据保存到新的Excel文件中
all_data.to_excel(output_file_path, index=False)
```
请将`your_input_folder_path`替换为您的输入文件夹路径,将`your_output_file_path.xlsx`替换为您希望保存新Excel文件的路径和文件名。
运行上述代码后,它将读取输入文件夹中的所有Excel文件,并将每个文件中的指定列进行排序后,按照文件名将数据添加到新的Excel表格中。新的Excel表格将具有每个文件名作为列名,并包含按照指定列排序后的数据。
请注意,这里假设您的输入文件夹中只包含Excel文件,且每个Excel文件中需要排序的列是第一列。如果需要排序的列不同,您可以根据实际情况进行修改。
阅读全文