用途:用于年度更新培训数据,把 CSV、XLSX 中的年份引用和文件名统一平移到指定年份,例如为 Power BI、Excel 或数据分析课程准备新一年材料。触发说法包括“เลื่อนปี”“shift year”“update year in data/training files”。
主要能力:CSV 通过扫描带引号字符串识别年份,只在引号内平移年份,从而避免改动未加引号的 StoreKey、CustomerKey、ProductKey 等数值;可处理订单号(如 "202401011CS952" → "202501011CS952")和 DD/MM/YYYY 日期(如 "01/01/2024" → "01/01/2025"),并重命名文件名中含年份的文件(如 contoso-online-2024.csv → contoso-online-2025.csv)。XLSX 会对名为 Year 或类似列的 2000–2099 数值单元格进行平移;若无 Year 列则扫描全部单元格中的独立年份;XLSX 文件本身不重命名。
使用方式:运行随附脚本 python "<skill-path>/scripts/shift_year.py" "<folder-path>" [--shift N] [--dry-run] folder-path 为包含数据文件的目录;--shift N 指定平移年数,默认 1,负值表示向前平移;--dry-run 仅预览将要重命名或修改的内容,不接触文件系统,也不生成备份。推荐先 dry-run、确认预览后再正式运行。
限制与注意:脚本按年份从高到低处理,避免同一文件多年份时被重复平移;修改前会在目标文件夹内创建 _backup/ 备份;CSV 保持 UTF-8 编码。当文件夹混合 CSV 与 XLSX、或存在类似年份的其他数值(产品代码、版本号、客户生日、含四位年份的评论文本)时,可能出现误匹配,建议先用 dry-run 核对。首次在新数据集上运行、或想先验证匹配可靠性时也应先预览。若预览异常,可调整处理范围(排除文件、修改平移量)后再次 dry-run。完成后应抽查输出文件;确认无误后可删除备份文件夹。相关技能 /xlsx-thepexcel 可在平移后继续读写 XLSX。