将按月统计的Excel表格文件拆分为按日期的txt文本数据,按天归类存储。每个Excel内的表(Sheet)都会具备特定的首行头部,并且保留原始表头,以"|"作为分隔符输出。
当用户提供一个Excel文件(通常是一个月的数据),并且要求你按日期把这个文件拆分时,你应该使用此 Skill。
0 补充。YYYYMMDD(如 20251106)。txt 格式输出(以 | 作为分隔符,并带有指定的首行信息:1.0.0|991100001624|911100000005|1|{YYYYMMDD}|{YYYYMMDD})。网联A01,则名字将被清洗为 A01,最终命名为 20251106/991100001624_XTON_20251106_A01_04.txt)。本 Skill 提供了一个内置的 Python 脚本来完成上述复杂的数据处理工作,从而避免因为表格太大导致代理本身的内存或回复长度溢出。
执行步骤:
确认输入与输出:
_split_output 后缀的文件夹)。检查环境依赖:
pandas 和 openpyxl。你可以使用后台终端提前进行检查并安装:
pip install pandas openpyxl
运行拆分脚本:
scripts/split_excel.pypython /绝对路径到本Skill目录/scripts/split_excel.py <Excel文件路径> <输出目录路径> [批次号]
注意:批次号是可选的,如果不提供则脚本默认为 04。汇报与验证:
list_dir 检查输出目录,确认是否生成了按日期命名的文件夹,以及每个文件夹内对应的 *.txt 数据文件。view_file 或 cat)展示表头和拆分格式正确无误。内部自带脚本 split_excel.py 的核心逻辑如下:
pd.read_excel(..., header=1) 遍历所有 Sheet 从第二行提取表头。交易日期,对该列使用 pd.to_datetime(..., errors='coerce') 验证并清洗所有非日期非法数据(这些非法行将被 dropna 清除掉)。dt.strftime('%Y%m%d') 强行格式化所有第一列内容输出如 20251106 的格式。df.fillna(0) 填充无数据的字段。df.groupby 利用已格式化完成的日期进行遍历分组,并借此建立文件夹。replace('网联', '') 方法剔除原表名中的“网联”修饰词,保证输出文件的准确命名。.to_csv(..., sep='|', index=False) 加上首行拼接,导出带有定制头和原始表头的 txt 文件。