python - Python 遍历 CSV 工作簿文件夹并仅将具有关键字和日期范围的工作簿名称附加到主工作表
问题描述
我对这个脚本的目标是遍历数百个 Excel 和 CSV 文件,只找到带有“cash”的文件字符串名称,即 CSV 文件,以及 2 个日期期间之间,格式为 YYYYMMDD。找到后,脚本会将第一个工作表的第二行拉到最后一行并将其附加到主工作表。
到目前为止,这是我能够整理的所有内容,但代码错误。任何帮助表示赞赏。先感谢您!
import pandas as pd
from glob import glob
from datetime import datetime
path = r'\\base\sub1\sub2\sub3\sub4\sub5\sub6\SearchFolder'
base_date = datetime(2020, 10, 1, 00, 00)
dates = pd.date_range(base_date, periods=92).tolist()
dates = [i.strftime("%Y%m%d") for i in dates]
list_of_csvs = glob(path+'*.csv')
print (list_of_csvs)
csvs_to_keep = []
for csv in list_of_csvs:
if 'cash activities' in str(csv).lower():
print ('cash activities found')
for date in dates:
if str(date) in csv:
print (csv)
csvs_to_keep.append(csv)
master_df = pd.DataFrame()
for csv in csvs_to_keep:
df = pd.read_csv(csv)
master_df = master_df.append(df)
master_df.to_excel('master_file.xlsx', index=False)
解决方案
推荐阅读
- git - 有没有办法在没有 gitignore 的情况下停止在 VS Code 中跟踪文件夹?
- json - 从 Kafka 解析嵌套 json 的模式
- git - Husky Hooks 上的附加命令失败
- python - 如何删除数据框中的换行符?
- amazon-web-services - 无法从 Windows 命令提示符运行 AWS CLI
- flutter - 将证券交易所的价格添加到移动应用程序中
- azure - 天蓝色 blob 存储 cli 计数
- javascript - 更改语言时修复图标方向
- c# - iqueryable 与子查询作为外连接
- r - 如何将 geom_label_repel 映射到 ggplot2 中的颜色