5.5 KiB
5.5 KiB
Excel导入列名问题说明
❌ 问题原因
您的Excel文件缺少必填列:
- ❌ 信息编号 - 必填
- ❌ 罪犯姓名 - 必填
当前Excel结构
监区 | 班级 | 性别 | 民族 | 文化程度 | 罪名 | 刑期 | ...
系统要求的Excel结构
信息编号 | 罪犯姓名 | 监狱 | 监区 | 班级 | 性别 | 民族 | 文化程度 | 罪名 | ...
✅ 解决方案
方案1:手动修改Excel(推荐)
-
打开Excel文件
-
插入两列到最前面
- 在A列前插入两列
-
添加列名
- A列:信息编号
- B列:罪犯姓名
-
填写数据
信息编号: 201, 202, 203, ... (唯一数字) 罪犯姓名: 张三, 李四, 王五, ... -
完整列顺序
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:下载系统模板
- 在系统中点击"下载模板"
- 将数据复制到模板中
- 保持列名和顺序一致
📋 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脚本说明
脚本功能
- ✅ 自动添加"信息编号"列(从201开始递增)
- ✅ 自动生成随机"罪犯姓名"
- ✅ 添加"监狱"列(默认为"第一监狱")
- ✅ 调整列顺序,符合系统要求
- ✅ 生成新文件:
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列是"信息编号"
- ☑️ 第2列是"罪犯姓名"
- ☑️ 信息编号全部填写且唯一
- ☑️ 罪犯姓名全部填写
- ☑️ 监区全部填写
- ☑️ 日期格式为 yyyy-MM-dd
导入后验证
- 检查导入结果:成功X条,失败X条
- 如果失败,查看失败原因
- 根据失败原因修改Excel后重新导入
✅ 总结
问题根源
- Excel文件缺少"信息编号"和"罪犯姓名"两个必填列
解决方法
- 手动添加 - 在Excel最前面插入两列
- 使用脚本 - 运行Python脚本自动修复
- 使用模板 - 下载系统模板重新填写
重要提示
- ✅ 列名必须完全匹配(区分大小写)
- ✅ 列顺序建议按照系统要求
- ✅ 必填列不能为空
- ✅ 日期格式必须为 yyyy-MM-dd