Back to skills
extension
Category: Data & AnalyticsNo API key required

药占比与运营指标自动统计

【世界药师节·AI药学技能大赛参赛作品】数据控制(药占比 / 医院运营指标自动统计 Excel)。This skill should be used when a hospital pharmacist needs to build an auto-updating Excel for monitoring a drug-ratio (药占比) or any hospital operational indicator — monthly data entry that auto-computes ratios, MoM/YoY, cumulative values, target attainment, weighted prediction, and contribution decomposition, with three-line tables, native charts, and paired t-tests. Trigger phrases include 药占比监测, 科室药占比, 医院运营指标自动统计, 每月录入自动统计, 控制方案附表, 数据控制.

personAuthor: user_ac76f862hubcommunity

数据控制(药占比 / 医院运营指标自动统计 Excel)

用途

将「逐月录入原始数据 → 自动统计 → 图表分析 → 升降影响分解」的工作流封装为可复用模板。 产出一份 可填写、可自动重算 的 Excel,药师每月只改黄色录入单元格,其余(药占比、环比、 同比、累计、达标判定、预测值、门诊/住院贡献分解、t 检验 P 值)全部由公式驱动;原生图表随数据联动。

何时使用

  • 用户要给某医院运营指标(典型为「药占比」)做逐月监测与科室对比。
  • 用户要求 Excel「自动统计」「我每月填数据就更新」「可输入」「可填写」。
  • 出现「控制方案」「附表」「国考指标」「科室药占比趋势」「权重比」「预测」等关键词。
  • 需要三线表、图表、统计检验(P 值)并规避禁用词、采用期刊风格。

环境前置

本机已建好 managed venv,脚本用它运行(不要污染系统 Python):

PY="C:/Users/Administrator/.workbuddy/binaries/python/envs/default/Scripts/python.exe"

已装:pandas / numpy / openpyxl / matplotlib / scipy / statsmodels / lifelines / python-docx / xlrd。

  • .xls(WPS 老格式)需 xlrdpd.ExcelFile(path, engine='xlrd')
  • .xlsx / .et 备份用 openpyxl
  • matplotlib 中文:plt.rcParams["font.sans-serif"]=["Microsoft YaHei","SimHei","SimSun"],并设 axes.unicode_minus=False

工作流

1. 定位数据源

先在工作区/桌面/下载/微信·企业微信缓存/医院报表目录找附件,用 openpyxl/xlrd 扫关键词 (药占比/药品收入/医疗收入/科室)定位真实文件。常见三类数据源:

  • 全院逐月(主文件):含门诊/住院「药品收入、医疗收入」,逐月与累计;2026.7–12 留空待录入。
  • 科室级(附表):门诊 N 科室 + 住院 M 科室的汇总药占比(比例,如 0.58=58%)。
  • 若用户给 控制方案/附表.xlsx,优先用其科室结构作基线。

2. 解析与口径统一

  • references/formulas.md 的解析方法把原始行列映射为「月份 / 门诊药品收入 / 门诊医疗收入 / 住院药品收入 / 住院医疗收入」。
  • 单位换算(必须注明):原始金额单位为「元」→ 公式输出比例(0–1) → 单元格格式设为百分比 %, 保留 2 位小数。含/不含中药饮片两口径分开列,主监测口径用「不含中药饮片」。

3. 构建 Excel(核心)

直接用 scripts/build_template.py 作底稿(复制后改顶部 CONFIG 即可)。结构:

  • 说明与图表清单页:数据来源、口径与单位换算、使用方法、控制目标说明、图表清单。
  • 表1 全院逐月监测(主要结局):录入列(黄色)= 门诊/住院药品收入(元,不含中药)、 医疗收入(元)、控制目标(%);自动列 = 门诊/住院/全院药占比、环比、同比、累计、达标判定。
  • 表2/表3 门诊/住院科室(次要结局):科室药占比 + 控制目标 + 达标判定 + 与全院均值差。
  • 表4 统计检验:2025H1 vs 2026H1 配对 t 检验(T.TEST),P 值按 P<0.001 / P=0.0xx / P>0.05 自动格式化。
  • 表5 日常控制预测:以半年权重分解,录入本月门诊/住院药占比即预测全院值,并分解各自拉动贡献。
  • 分析报告页:期刊风格结论(规避禁用词)。

4. 三线表与图表

  • 三线表:表头上行 medium 粗线、栏线 thin、表尾 medium 粗线(见 build_template.pythree_line)。
  • 图表用 openpyxl 原生 LineChart/BarCharty_axis.numFmt='0%'图题放图下方、表题放表上方
  • 图表引用公式单元格(openpyxl 不缓存值,Excel/WPS 打开即重算联动)。

5. 统计检验

  • 配对 t 检验:=T.TEST(范围A,范围B,1,2)(双尾 type=2;单侧 type=1)。
  • P 值格式:=IF(E<0.001,"P<0.001",IF(E<0.05,"P="&TEXT(E,"0.000"),"P>0.05"))
  • 关键结论需带方向(上升/下降多少个百分点),不写「差异明显」之类模糊词。

6. 校验(必做)

openpyxl 不重算公式,须用 Python 独立复算核对:

  • 抽查药占比、累计、同比、权重、T.TEST 公式文本与逻辑一致;
  • 确认三线表边框、图表数量(本模板 7 页 6 图);
  • 若文件被预览/办公软件锁定,先存工作区,再请用户关闭占用后覆盖目标路径。

关键公式速查(完整版见 references/formulas.md)

全院药占比(不含中药) = (门诊药品收入+住院药品药品收入) / (门诊医疗收入+住院医疗收入)
门诊权重 W门诊 = 门诊医疗收入 / (门诊医疗收入+住院医疗收入)
全院预测 = 门诊预测×W门诊 + 住院预测×W住院
门诊贡献 = (本月门诊−门诊基线)×W门诊 ;  住院贡献 = (本月住院−住院基线)×W住院
达标判定 = IF(实际≤目标,"达标","未达标")

交付与风格要求

  • 输出 .xlsx,文件名含「全院药占比监测与统计分析表」之类语义。
  • 数字精度:小数点后 1–2 位;百分比 2 位。
  • P 值格式严格:P<0.001 / P=0.032 / P>0.05
  • 禁用词(不可出现在报告/说明):根据数据显示、由此可见、结果表明具有一定、差异较为明显、呈现出一定趋势。
  • 末尾附【图表清单】(表1/表2/…/图1/图2/…)。
  • 表题在表上方、图题在图下方。