python以某列“区”筛选分组,每一个明明设置一个sheet在同一个excel中
时间: 2024-04-30 20:22:46 浏览: 90
python自动办公-11 在Excel中按条件筛选数据并存入新的表
5星 · 资源好评率100%
可以使用pandas库和openpyxl库实现。具体步骤如下:
1.读取数据
使用pandas库的read_excel函数读取excel文件中的数据,并将“区”列作为索引。
```python
import pandas as pd
df = pd.read_excel('data.xlsx', index_col='区')
```
2.分组并写入excel
使用pandas库的groupby函数对数据进行分组,将每个分组写入一个新的sheet中。使用openpyxl库创建一个新的excel文件,并将每个分组写入一个新的sheet中。
```python
from openpyxl import Workbook
# 分组
groups = df.groupby(df.index)
# 创建excel文件
wb = Workbook()
# 遍历每个分组,将其写入新的sheet中
for name, group in groups:
ws = wb.create_sheet(name)
for r in dataframe_to_rows(group, index=True, header=True):
ws.append(r)
# 保存excel文件
wb.save('output.xlsx')
```
其中,dataframe_to_rows函数用于将DataFrame对象转换为二维列表,以便写入excel中。
阅读全文