{
  "schemaVersion": 1,
  "id": "1.1.1",
  "title": "智能医疗系统中的业务数据处理流程设计",
  "durationMinutes": 30,
  "category": "代码填空与数据分析",
  "scenario": "某医疗机构计划引入智能医疗系统，以提升诊断效率和准确性。通过分析患者的历史数据，使用机器学习算法预测患者的健康风险，从而辅助医生进行诊断和治疗。为此，该机构需要设计一套全面的业务数据处理流程，确保数据处理的高效性和准确性，为人工智能模型提供可靠的输入数据。\n\n我们提供一个患者数据集（patient_data.csv），包含以下字段：\n\nPatientID: 患者ID\n\nAge: 年龄\n\nBMI: 体重指数\n\nBloodPressure: 血压\n\nCholesterol: 胆固醇水平\n\nDaysInHospital: 住院天数\n\n你作为人工智能训练师，根据提供的数据集和Python代码框架（1.1.1.ipynb），完成以下数据的统计和分析，为智能医疗系统提供可靠的数据支持。\n\n（1）通过运行Python代码（1.1.1.ipynb）分别统计住院天数超过7天的患者数量以及其占比。这类患者被定义为高风险患者，反之为低风险患者。将上述统计结果截图以JPG的格式保存，命名为“1.1.1-1”。\n\n（2）通过运行Python代码（1.1.1. ipynb）统计不同BMI区间中高风险患者的比例和患者数。BMI区间分类设置为：低于18.5，18.5～24.9，25.0～29.9，高于30.0，将上述统计结果截图以JPG的格式保存，命名为“1.1.1-2”。\n\n（3）通过运行Python代码（1.1.1. ipynb）统计不同年龄区间中高风险患者的比例和患者数。年龄区间分类设置为：低于25岁，26岁-35岁，36岁-45岁，46岁-55岁，56岁-65岁，高于65岁，将上述统计结果截图以JPG的格式保存，命名为“1.1.1-3”。",
  "skillRequirements": "（1）能结合人工智能技术要求和业务特征，设计整套业务数据处理流程；",
  "qualityIndicators": "（1）设计出的业务数据底层逻辑清晰，有效合理。",
  "tasks": [
    {
      "id": "code-fill",
      "type": "code-fill",
      "title": "补全代码任务",
      "instructions": "依据公开题面和附件补全代码空位；仅检查完成度与提交格式，不公开标准内容。",
      "codeBlocks": [
        "import pandas as pd\nimport numpy as np\n\n# 读取数据集 1分\ndata = ______________________________",
        "# 1. 统计住院天数超过7天的患者数量及其占比\n# 创建新列'RiskLevel'，根据住院天数判断风险等级 3分\n_____________ = _____________(_____________, '高风险患者', '低风险患者')\n# 统计不同风险等级的患者数量 2分\nrisk_counts = data_____________._____________\n# 计算高风险患者占比 1分\nhigh_risk_ratio = risk_counts['高风险患者'] / _____________\n# 计算低风险患者占比 1分\nlow_risk_ratio = risk_counts['低风险患者'] / _____________\n\n# 输出结果\nprint(\"高风险患者数量:\", risk_counts['高风险患者'])\nprint(\"低风险患者数量:\", risk_counts['低风险患者'])\nprint(\"高风险患者占比:\", high_risk_ratio)\nprint(\"低风险患者占比:\", low_risk_ratio)",
        "# 2. 统计不同BMI区间中高风险患者的比例和统计不同BMI区间中的患者数\n# 定义BMI区间和标签\nbmi_bins = [0, 18.5, 24, 28, np.inf]\nbmi_labels = ['偏瘦', '正常', '超重', '肥胖']\n# 根据BMI值划分指定区间 4分\ndata['BMIRange'] = _____________(_____________, _____________, _____________, right=False)  # 使用左闭右开区间\n# 计算每个BMI区间中高风险患者的比例 2分\nbmi_risk_rate = _____________(_____________)['RiskLevel'].apply(lambda x: (x == '高风险患者').mean())\n# 统计每个BMI区间的患者数量 1分\nbmi_patient_count = data_____________\n\n# 输出结果\nprint(\"BMI区间中高风险患者的比例和患者数:\")\nprint(bmi_risk_rate) \nprint(bmi_patient_count)",
        "# 3. 统计不同年龄区间中高风险患者的比例和统计不同年龄区间中的患者数\n# 定义年龄区间和标签\nage_bins = [0, 26, 36, 46, 56, 66, np.inf]\nage_labels = ['≤25岁', '26-35岁', '36-45岁', '46-55岁', '56-65岁', '＞65岁']\n# 根据年龄值划分指定区间 4分\ndata['AgeRange'] = _____________(_____________, _____________, _____________, right=False)  # 使用左闭右开区间\n# 计算每个年龄区间中高风险患者的比例 2分\nage_risk_rate = _____________(_____________)['RiskLevel'].apply(lambda x: (x == '高风险患者').mean())\n# 统计每个年龄区间的患者数量 1分\nage_patient_count = data_____________\n\n# 输出结果\nprint(\"年龄区间中高风险患者的比例和患者数:\")\nprint(age_risk_rate) \nprint(age_patient_count) "
      ],
      "blanks": [
        {
          "id": "blank-1",
          "block": 1,
          "placeholder": "______________________________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-2",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-3",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-4",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-5",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-6",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-7",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-8",
          "block": 2,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-9",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-10",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-11",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-12",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-13",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-14",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-15",
          "block": 3,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-16",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-17",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-18",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-19",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-20",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-21",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        },
        {
          "id": "blank-22",
          "block": 4,
          "placeholder": "_____________",
          "gradingMode": "completion-and-format-only"
        }
      ]
    },
    {
      "id": "1-1-response",
      "type": "rubric-response",
      "title": "数据处理结果分析",
      "instructions": "说明处理过程、结果证据和质量判断。",
      "sections": [
        {
          "id": "response",
          "label": "作答内容"
        }
      ],
      "rubric": [
        {
          "id": "criterion-1",
          "label": "处理流程完整且逻辑清晰",
          "weight": 25
        },
        {
          "id": "criterion-2",
          "label": "关键结果有附件或数据证据",
          "weight": 25
        },
        {
          "id": "criterion-3",
          "label": "结果符合技能要求与质量指标",
          "weight": 25
        },
        {
          "id": "criterion-4",
          "label": "能够解释异常、限制和改进方向",
          "weight": 25
        }
      ]
    },
    {
      "id": "result-check",
      "type": "numeric-analysis",
      "title": "提交关键统计结果",
      "fields": [
        {
          "id": "highRiskCount",
          "label": "高风险患者数量",
          "kind": "integer"
        },
        {
          "id": "lowRiskCount",
          "label": "低风险患者数量",
          "kind": "integer"
        },
        {
          "id": "highRiskRatio",
          "label": "高风险患者占比",
          "kind": "ratio"
        },
        {
          "id": "lowRiskRatio",
          "label": "低风险患者占比",
          "kind": "ratio"
        }
      ]
    },
    {
      "id": "artifact-submission",
      "type": "artifact-submission",
      "title": "选择结果文件",
      "instructions": "文件仅在本机选择并校验，不上传，也不持久化文件内容。",
      "items": [
        {
          "id": "artifact-1",
          "label": "提交文件：1.1.1-1.jpg",
          "filename": "1.1.1-1.jpg",
          "extensions": [
            ".jpg"
          ],
          "minCount": 1,
          "maxCount": 1,
          "maxSize": 104857600
        },
        {
          "id": "artifact-2",
          "label": "提交文件：1.1.1-2.jpg",
          "filename": "1.1.1-2.jpg",
          "extensions": [
            ".jpg"
          ],
          "minCount": 1,
          "maxCount": 1,
          "maxSize": 104857600
        },
        {
          "id": "artifact-3",
          "label": "提交文件：1.1.1-3.jpg",
          "filename": "1.1.1-3.jpg",
          "extensions": [
            ".jpg"
          ],
          "minCount": 1,
          "maxCount": 1,
          "maxSize": 104857600
        }
      ]
    }
  ],
  "attachments": [
    {
      "name": "1.1.1.ipynb",
      "url": "assets/1.1.1/1.1.1.ipynb",
      "size": 3618,
      "sha256": "5ca6a2f6a393e7fa01fa101bfb23ef34f8fc2c5e94071aa563de5b6344d49987",
      "mime": "application/x-ipynb+json"
    },
    {
      "name": "1.1.1.md",
      "url": "assets/1.1.1/1.1.1.md",
      "size": 2297,
      "sha256": "0abd6d689462c49d2fb3571619f6dc5bb8c6794742225b9ca37d4f93910428d9",
      "mime": "text/markdown"
    },
    {
      "name": "patient_data.csv",
      "url": "assets/1.1.1/patient_data.csv",
      "size": 22996,
      "sha256": "1dca56eed4f5a447e31a47e71a1bb0e645fc369dbd9507300b0cca0d3d6f8e91",
      "mime": "text/csv"
    }
  ],
  "grading": {
    "mode": "completion-and-format-only"
  },
  "review": {
    "status": "approved-with-correction",
    "notice": "原材料中的 BMI 边界与参考代码不一致。本训练保留原题说明，并将相关分组项标为复核提示；确定性结果仅用于高低风险总数与占比。",
    "conflicts": [
      "题面 BMI 分组与原参考代码分界不一致。",
      "年龄题面首组边界与原参考代码覆盖范围不一致。"
    ]
  },
  "contentVersion": "634c7746c68f88bc"
}
