用pandas条件筛选增加筛选条件已处理,输出文件名增加实时日期
时间: 2024-02-21 08:03:01 浏览: 126
python项目实例代码源码-在Excel中按条件筛选数据并存入新的表.zip
好的,您可以尝试如下修改代码:
```python
import pandas as pd
import datetime
now = datetime.datetime.now().strftime('%Y%m%d') # 获取当前日期,格式为年月日
data = pd.read_excel(r'E:\每日数据\MISPOS明细.xlsx', dtype={'商户编号': str, '终端编号': str, '处理情况': str})
# 使用Pandas的条件筛选功能,筛选出处理情况为“未处理”的行数据
data = data[data["处理情况"] == "未处理"]
department_list = []
for department in data["省份"].unique():
# 筛选出省份为department的行数据,存储到一个新的DataFrame对象new_df中
new_df = data[data["省份"] == department]
# 将new_df写入到一个以“省份+日期+未处理明细.xlsx”命名的Excel文件中
filename = "{}-{}-{} 未处理明细.xlsx".format(department, now[:4], now[4:])
new_df.to_excel(filename, sheet_name=department, index=False)
# 将省份名称添加到department_list列表中
department_list.append(department)
```
这段代码的主要修改如下:
1. 使用Pandas的条件筛选功能,筛选出处理情况为“未处理”的行数据,存储回data中。
2. 使用data["省份"].unique()获取不重复的“省份”值,遍历所有“省份”值。
3. 使用Pandas的条件筛选功能,筛选出省份为department的行数据,存储到一个新的DataFrame对象new_df中。
4. 使用字符串格式化,生成一个以“省份+日期+未处理明细.xlsx”命名的Excel文件名。
5. 将new_df写入到新生成的Excel文件中,文件名为生成的文件名。
6. 将省份名称添加到department_list列表中。
阅读全文