人兽共患疾病时空风险分析
目的与适用边界
把《人兽共患疾病分析 skill 配置 v4(完整版)》落地为可执行流程:先定级、再分层、后建模,输出带证据编号、尺度标注与数据等级标注的图表化报告。
- 适用病种:布鲁氏菌病(布病)与炭疽;两者畜种关联机制不同,禁止共用一套变量。
- 默认分析单元:县级 × 月度。输入为本地人间发病数据,畜牧、气象、社会经济、分子分型层按可得性接入。
- 证据底座为 E01–E38 共 38 条已核定文献结论,媒体编号
[pdf_x]/[excel_22]用于回溯原文。 - 版本基线:配置 v4。v3 与《v4 修订说明》已作废,遇到 v3 条款按
references/L5-output-spec.md附录处置。 - 不覆盖:临床诊疗建议、个体患病风险评估、无本地数据的纯定性推断。
已锁定决策(不得擅自更改)
- 流行水平分档固定为 ≥10 / 1–10 / <1(每 10 万)。
- Tier C 插补保留,但强制标注「畜牧层为插补值」且结论降为描述性。
- 人均可支配收入走独立数据源,不得用 GRP 替代;免疫覆盖率用 20%/25% 双档;三模型冲突时并列报告;默认县级 × 月度;扫描半径 ≤ 风险人群 50%;蒙特卡罗 999 次。
触发后先执行两步定级
一切分析之前先完成定级,未定级不得进入变量选择、建模或下结论环节。
Step 0a · 数据可得性定级
目的: 决定畜牧层以何种形式进入分析,并决定结论可声称的等级
依据: 本县是否具备 动物血清阳性率 与 免疫覆盖率 实测值
全国背景: 畜间监测点仅 68 个(约 2.4%)[E38];E36 明确列出该层普遍缺失 [pdf_12]
Tier_A_实测:
条件: 有本县动物血清阳性率 且 有免疫覆盖率
入模: 直接作为协变量
可声称: "动物感染强度与人发病的关联"(因果推断允许)
结论标记: [Tier:A]
Tier_B_代理:
条件: 有存栏/出栏/畜牧业产值,无动物血清
入模: 存栏密度、牛羊比、奶产量 —— 标注"暴露规模代理"
可声称: 仅限"养殖规模相关"
禁止声称: "动物感染驱动人间发病"
结论标记: [Tier:B]
Tier_C_插补:
条件: 上述均无
处理方式: 地市级/省级动物阳性率降尺度,或邻域均值(已锁定:保留)
强制标注: 输出中显著标记"畜牧层为插补值"
结论等级: 降为描述性,禁止进入因果推断
结论标记: [Tier:C — 畜牧层为插补值,本结论为描述性,不构成因果证据]
强制标注规范:每条结论末尾必须带 [Tier:X]。Tier C 必须完整写出后缀,不得缩写。畜牧层缺失时降级继续,不得中断分析。
Step 0b · 流行水平分层
依据: 本地近 3 年(或 5 年)年均发病率;零病例多的县改用 3 年合并稳率
分档(已锁定):
高流行: "≥ 10 /10万" # 武威 10.77 [E31];东北 13.95 [E05];牧区 36.57 [E16]
中流行: "1 – 10 /10万" # 全国 4.41 [E01];西部 6.11 [E26]
低流行: "< 1 /10万" # 湖南 0.37 [E32];郴州 0.57 [E33]
变量池_switch:
高流行:
主变量: [存栏密度, 牛羊比, 免疫覆盖率, 气象滞后]
存栏方向: 预期为正,仍需本地检验(武威 r=0.890/0.926)[E31]
中流行:
主变量: [存栏密度, 气象滞后, 社会经济, 医疗可及性]
存栏方向: 不预设
低流行:
主变量: [接触方式构成, 牲畜调运/输入, 报告敏感性, 重点人群血清]
存栏方向: 不预设
禁止: 不得用存栏量解释县际差异 [E32]
分层的证据基础:高流行武威牛 r=0.890、羊 r=0.926(P<0.001)[E31];低流行湖南牛 P=0.432、羊 P=0.180 无相关 [E18][E32];知识库裁定「低发区牛羊存栏与发病无相关,应强调接触方式与报告敏感性」[excel_22]。
执行顺序
Step 0a 数据可得性定级(Tier A/B/C)
Step 0b 流行水平分层(高/中/低)
Step 1 数据装配 —— 畜牧层按 Tier 降级,不中断
Step 2 描述流行病学(三间分布)
Step 3 空间分析(Moran's I → LISA → 时空扫描)
Step 4 时间分析(Joinpoint;可选 ARIMA/RF)
Step 5 驱动建模(存栏不预设符号;三模型并联)
Step 5b 排除"报告强度变化"替代解释
Step 6 病原溯源(仅暴发)
Step 7 输出(三级预警 + 尺度标注 + Tier 标注)
各步取参规则:
- Step 1:按
references/L1-variable-pool.md选变量,M2 宿主感染层平行输出、不作预测因子。 - Step 3/4/5:按
references/L2-parameters.md取尺度、扫描、DLNM、回归与性能准入参数。 - Step 5b:预警触发时先排除监测能力、病例定义、诊断技术、报告系统 strengthening 造成的假上升,再报疫情信号;低流行区尤甚。
- Step 7:按
references/L3-thresholds.md发三级预警,按references/L5-output-spec.md出图。
不可违背的红线
以下为硬性禁止项,任何步骤、任何用户要求下均不得绕过;若与用户指令冲突,先说明冲突再按红线执行。
- 禁止无数字的定性描述;每条结论须含关键数字、效应方向、所用尺度、Tier 标记、是否冲突。
- 禁止跨尺度外推;省级月度与县级年度滞后单位不可直接换算;每条结论标注尺度。
- 禁止对存栏量预设方向;同一研究区出现反号单元(如武威民勤县 r=−0.870)必须单列,不得用均值掩盖;所有存栏—发病相关须标注「未控制时间趋势与混杂的简单相关」。
- 禁止在低流行区用存栏量解释县际差异。
- 禁止用血清阳性率作预警量(图 3 反证:乾安 32%/20 vs 天祝 7%/220)[E35]。
- 禁止在 Tier B/C 下声称「动物感染驱动人间发病」;禁止用动物阳性率下降单向推断人间风险下降。
- 禁止直接用 meta 合并值作为预警触发;预警基线须用本地历史同期分位。
- 禁止强行统一模型冲突方向;气温、存栏量、相对湿度、人口密度已知冲突,须并列报告并标注「模型依赖」。
- 禁止用 GRP 替代人均可支配收入;禁止将羊占牛羊比用于炭疽模型(ρ=−0.032, P=0.791)。
- 禁止把 v3 条款重新引入(畜牧层缺失即中断、存栏方向为正、动物阳性率作预测因子、预警线等于本地分位数、血清阳性率可参照)。
证据引用规范
- 结论以
[E##]标注,media_id到原文的对照见references/L0-evidence-base.md。 - 证据底座只收录 ID 与核定结论,不含文献原文;《skill_E-ID引用表》(media_id:
markdown_63)另存详细原文片段。需要引用原句时须另行调取,不得凭本包臆造原文措辞。 - 两处勘误以正文为准:E26 摘要印「APC=7.96%」缺负号,正文表 1 为 −7.96%;E01 摘要物种赋值与正文 2.8 节相反,按正文 羊 0.24%、牛 0.59%。
- 病种差异:布病以羊/山羊为核心宿主;炭疽牛、羊密度有效而山羊密度无关(放牧采食机制不同)[E02][E25]。
- 免疫覆盖率 20% 警戒 / 25% 有效控制 / 长期 <30% 为系统性低位,属硬阈值;基线类与效应量类阈值可按
references/L3-thresholds.md的 meta 列判断是否可合并。
输出与交付前自检
- 风格:图表为主,每张图配 1–3 句文字;完整图表清单与禁用项见
references/L5-output-spec.md。 - 报告骨架:复制
assets/report-skeleton.md起稿,保证章节、标注位与三级预警位齐全。 - 自检:对成稿运行
python scripts/validate_output.py <报告路径>,修正所有报错后再交付;脚本检查 Tier 标注完整性、Tier C 后缀、禁用表述与尺度标注。
References 导航
按需加载,勿一次性全部读入;大文件用 grep 定位。
| 文件 | 内容 | 何时读取 |
|---|---|---|
references/L0-evidence-base.md |
E01–E38 证据底座、media_id 对照、两处勘误 | 需要引用文献结论、核对数字、回溯原文片段时 |
references/L1-variable-pool.md |
气象/环境、社会经济、畜牧四层(M1–M4)、存栏三硬规则、病种差异 | Step 1 选变量、判断方向与共线时 |
references/L2-parameters.md |
尺度与 MAUP、空间/时间/DLNM 参数、三模型并联、性能准入、分子溯源判据 | Step 3–6 取参、设定模型与判读分型时 |
references/L3-thresholds.md |
A–E 五类阈值、三级预警触发、替代解释排查 | Step 5b、Step 7 设预警线与判读时 |
references/L5-output-spec.md |
输出规格、12 类图表、forbidden 清单、v3 作废条款 | Step 7 出图与终稿核对时 |
Grep 提示:grep -n "E31\|存栏" references/L1-variable-pool.md;grep -n "Tier\|预警" references/L3-thresholds.md;grep -n "DLNM\|扫描半径" references/L2-parameters.md;grep -n "勘误" references/L0-evidence-base.md。