guoyu/Test/备份/_已清理文件备份_周六 22512/md/Excel导入列名问题说明.md

5.5 KiB
Raw Blame History

Excel导入列名问题说明

问题原因

您的Excel文件缺少必填列

  1. 信息编号 - 必填
  2. 罪犯姓名 - 必填

当前Excel结构

监区 | 班级 | 性别 | 民族 | 文化程度 | 罪名 | 刑期 | ...

系统要求的Excel结构

信息编号 | 罪犯姓名 | 监狱 | 监区 | 班级 | 性别 | 民族 | 文化程度 | 罪名 | ...

解决方案

方案1手动修改Excel推荐

  1. 打开Excel文件

  2. 插入两列到最前面

    • 在A列前插入两列
  3. 添加列名

    • A列信息编号
    • B列罪犯姓名
  4. 填写数据

    信息编号: 201, 202, 203, ... (唯一数字)
    罪犯姓名: 张三, 李四, 王五, ...
    
  5. 完整列顺序

    A列: 信息编号
    B列: 罪犯姓名
    C列: 监狱(可选,可填"第一监狱"
    D列: 监区
    E列: 班级
    F列: 性别
    G列: 民族
    H列: 文化程度
    I列: 罪名
    J列: 刑期
    K列: 刑期起日
    L列: 刑期止日
    M列: 入监时间
    N列: 状态
    

方案2使用Python脚本自动修复

步骤1安装依赖

pip install pandas openpyxl

步骤2运行脚本

cd C:\Users\Administrator\Desktop\Project\ry_study-v_03
python fix_prison_data.py

步骤3使用生成的文件

  • 脚本会生成:prison_data_fixed.xlsx
  • 使用该文件导入系统

方案3下载系统模板

  1. 在系统中点击"下载模板"
  2. 将数据复制到模板中
  3. 保持列名和顺序一致

📋 Excel列名对照表

序号 列名 是否必填 示例 说明
1 信息编号 必填 201 唯一标识,纯数字
2 罪犯姓名 必填 张三 中文姓名
3 监狱 可选 第一监狱 监狱名称
4 监区 必填 四监区 监区名称
5 班级 可选 二班 班级名称(需先在系统中创建)
6 性别 可选 男 或 女 只能填"男"或"女"
7 民族 可选 汉族 民族名称
8 文化程度 可选 大专 如:小学、初中、高中、大专、本科
9 罪名 可选 抢劫罪 罪名全称
10 刑期 可选 72 月数,纯数字
11 刑期起日 可选 2024-06-20 日期格式yyyy-MM-dd
12 刑期止日 可选 2030-05-20 日期格式yyyy-MM-dd
13 入监时间 可选 2024-06-20 日期格式yyyy-MM-dd
14 状态 可选 在押 "在押"或"已释放"

🎯 示例数据

正确的Excel数据

信息编号 | 罪犯姓名 | 监狱     | 监区   | 班级 | 性别 | 民族     | 文化程度 | 罪名       | 刑期 | 刑期起日   | 刑期止日   | 入监时间   | 状态
201     | 张三    | 第一监狱 | 四监区 | 二班 | 男   | 维吾尔族 | 大专     | 抢劫罪     | 72   | 2024-06-20 | 2030-05-20 | 2024-06-20 | 在押
202     | 李四    | 第一监狱 | 一监区 | 五班 | 男   | 壮族     | 硕士     | 寻衅滋事罪 | 60   | 2024-02-23 | 2029-01-27 | 2024-02-23 | 在押
203     | 王五    | 第一监狱 | 二监区 | 三班 | 男   | 彝族     | 初中     | 故意伤害罪 | 60   | 2023-03-03 | 2028-02-05 | 2023-03-03 | 在押

⚠️ 常见错误

错误1列名不匹配

❌ 错误: 姓名、编号、囚区
✅ 正确: 罪犯姓名、信息编号、监区

错误2列顺序错误

❌ 错误: 监区 | 班级 | 信息编号 | 罪犯姓名 | ...
✅ 正确: 信息编号 | 罪犯姓名 | 监狱 | 监区 | 班级 | ...

错误3必填列为空

❌ 错误: 信息编号=201罪犯姓名=(空)
✅ 正确: 信息编号=201罪犯姓名=张三

错误4日期格式错误

❌ 错误: 2024/06/20、20240620
✅ 正确: 2024-06-20

🔧 Python脚本说明

脚本功能

  1. 自动添加"信息编号"列从201开始递增
  2. 自动生成随机"罪犯姓名"
  3. 添加"监狱"列(默认为"第一监狱"
  4. 调整列顺序,符合系统要求
  5. 生成新文件:prison_data_fixed.xlsx

脚本位置

c:\Users\Administrator\Desktop\Project\ry_study-v_03\fix_prison_data.py

使用方法

# 1. 安装依赖
pip install pandas openpyxl

# 2. 运行脚本
cd c:\Users\Administrator\Desktop\Project\ry_study-v_03
python fix_prison_data.py

# 3. 使用生成的文件
# prison_data_fixed.xlsx

📊 验证方法

导入前检查

  1. ☑️ 第1列是"信息编号"
  2. ☑️ 第2列是"罪犯姓名"
  3. ☑️ 信息编号全部填写且唯一
  4. ☑️ 罪犯姓名全部填写
  5. ☑️ 监区全部填写
  6. ☑️ 日期格式为 yyyy-MM-dd

导入后验证

  1. 检查导入结果成功X条失败X条
  2. 如果失败,查看失败原因
  3. 根据失败原因修改Excel后重新导入

总结

问题根源

  • Excel文件缺少"信息编号"和"罪犯姓名"两个必填列

解决方法

  1. 手动添加 - 在Excel最前面插入两列
  2. 使用脚本 - 运行Python脚本自动修复
  3. 使用模板 - 下载系统模板重新填写

重要提示

  • 列名必须完全匹配(区分大小写)
  • 列顺序建议按照系统要求
  • 必填列不能为空
  • 日期格式必须为 yyyy-MM-dd