流程
每一步的产出都要写进 PRISMA 2020 的 27 个条目里。下表的“容易出错的地方”来自 Cochrane Handbook、PRISMA 2020 解释文件和 PROSPERO 说明。
| 步骤 | 要做什么 | 判断标准与常见错误 | 依据 |
|---|---|---|---|
| 1 注册方案 | 在 PROSPERO 填写 PICO、检索来源、纳排标准、主要结局、合并方法、亚组和敏感性分析计划 | PROSPERO 要求在数据提取开始前提交;方案里没写的亚组分析,论文里要标为事后分析。2025 年 3 月新系统上线,提交后由全部作者确认即自动发布,提交时会提示相似主题 | PROSPERO 说明;Handbook 10.11.5 |
| 2 检索 | PubMed/MEDLINE、Embase、Cochrane CENTRAL,加中文库(CNKI、万方、维普、SinoMed)和试验注册库(ClinicalTrials.gov、ChiCTR) | PRISMA 2020 第 7 条要求给出每个数据库的完整检索式,包括限定条件;2009 版只要求一个数据库。检索日期写到日 | PRISMA 2020 条目 7 |
| 3 去重 | 导入 EndNote、Zotero 或 Rayyan、Covidence 去重 | 同一试验的会议摘要、主报告和随访报告要合并为一个“研究”,按研究计数,避免重复计入 | Handbook 第 5 章 |
| 4 筛选 | 题名摘要初筛,再全文复筛,两人独立,分歧讨论或由第三人裁定 | PRISMA 2020 第 8 条要报告每条记录由几人筛、是否独立、是否用了自动化工具;流程图写清全文排除的理由和数量 | PRISMA 2020 条目 8、16a |
| 5 数据提取 | 预先设计提取表,用 2–3 篇文献试提取后再定稿,两人独立提取 | 同一指标有调整与未调整两种结果时,按方案预先规定的优先级取;多臂试验先决定哪些组相关 | Handbook 第 5、6、23 章 |
| 6 偏倚风险 | RCT 用 RoB 2,非随机干预研究用 ROBINS-I(V2 于 2025 年发布),暴露研究用 ROBINS-E,诊断试验用 QUADAS-2 | 按结局评价,RoB 2 的判断是针对某个结局的某个结果,不是针对整篇文献 | Sterne 2019 BMJ;Cochrane ROBINS-I V2 |
| 7 合并与异质性 | 选效应量,随机效应 + REML + HK,报告 tau²、I²、预测区间 | 不按异质性检验结果选择固定或随机效应 | Handbook 10.10.4 |
| 8 发表偏倚、敏感性分析 | ≥10 个研究做漏斗图与检验;按方案做敏感性分析 | 剪补法只作敏感性分析,不作为校正后的主结果 | Handbook 13.3;Peters 2007 |
| 9 证据确定性 | 每个结局用 GRADE 评级,做结果总结表(SoF) | PRISMA 2020 新增第 15、22 条,要求报告证据确定性的评价方法和结果 | PRISMA 2020;Core GRADE 2025 |
偏倚风险
| 研究类型 | 推荐工具 | 判断方式 | 要知道的问题 |
|---|---|---|---|
| 随机对照试验 | RoB 2(2019) | 5 个领域:随机化过程、偏离既定干预、结局数据缺失、结局测量、选择性报告;总体判断为低风险、有一些担忧、高风险 | 旧版 Cochrane 偏倚风险工具(7 条,2011)仍常见于中文文献,审稿人可能要求改用 RoB 2;RoB 2 需要先确定关注的是分配效应(ITT)还是依从效应 |
| 非随机干预研究(队列、病例对照比较两种治疗) | ROBINS-I(2016);V2 于 2025 年发布 | 以“目标试验”为参照,评价混杂、选择、干预分类等 7 个领域;V2 用算法根据信号问题给出建议判断,并纳入不朽时间偏倚 | ROBINS-I 比 NOS 费时,但能区分混杂处理是否充分 |
| 暴露因素研究(如吸烟与疾病) | ROBINS-E(2024) | 与 ROBINS-I 结构相似,针对暴露 | 工具较新,中文实例少 |
| 观察性研究(中文 Meta 分析的常见选择) | Newcastle-Ottawa 量表(NOS) | 选择、可比性、结局三部分,最高 9 颗星 | Stang 2010 指出 NOS 的条目与评分缺乏依据,评分者间一致性低;用 NOS 时报告每个条目的判断,不要只报总星数,也不要按“≥7 星为高质量”剔除研究 |
| 诊断准确性研究 | QUADAS-2 | 4 个领域的偏倚风险与适用性 | 诊断 Meta 分析的合并方法(双变量模型)与本页的干预性 Meta 分析不同 |
效应量
| 数据类型 | 可选效应量 | 怎么选 | 依据 |
|---|---|---|---|
| 二分类 | RR、OR、RD | 默认用 RR 或 OR。相对效应在不同基线风险下比绝对效应更一致,RD 合并后异质性往往更大;Handbook 建议除非有理由认为 RD 一致,否则不合并 RD。OR 不能当作 RR 解读,事件率超过 10% 时两者差别明显。绝对效应在结果总结表里用基线风险乘以 RR 换算 | Handbook 10.4.3 |
| 连续,单位相同 | MD(均数差) | 同一量表、同一单位时用 MD,结果可直接按临床单位解读。变化值与终点值可以混合合并 | Handbook 10.5.2 |
| 连续,量表不同 | SMD(Hedges g) | 测量同一构念但量表不同才用 SMD。RevMan、meta 和 Stata 的 SMD 默认都是 Hedges g(含小样本校正)。变化值与终点值不能混在一起算 SMD,因为两者的 SD 含义不同。不同研究中量表方向相反时,要先把一侧乘以 -1 | Handbook 6.5.1.2、10.5.2 |
| 生存数据 | HR | 合并 log HR 及其 SE(通用倒方差法)。不要用某个时点的生存率代替 HR,除非所有研究都只报告这一时点。数据来源优先级见下一节 | Handbook 6.8.2;Tierney 2007 |
| 计数与率 | 率比(rate ratio) | 时间单位在率比中相互抵消,统一不统一不影响结果 | Handbook 6.7.1 |
数据转换
先向通讯作者索要原始数据;拿不到时按下表换算,并把所有经过换算的研究在敏感性分析中剔除一次,看结论是否改变。
Wan、Luo、Shi 方法的作者团队(香港浸会大学童铁军等)提供了在线计算器和 Excel 表,先做偏度检验再换算;R 的 meta(metacont 的 median、q1、q3、min、max 参数)和 metafor(conv.fivenum)都内置了同样的公式。
Handbook 10.5.3 给出一个偏态判断:对只能取正值的指标,均值/SD 小于 2 提示偏态,小于 1 时偏态明显;这类研究报告的均值和 SD 用于 MD 合并时要谨慎,对数转换与未转换的数据不能混合合并。
单位不一致时先统一单位再合并。例如血糖 mg/dL 除以 18 得到 mmol/L,总胆固醇 mg/dL 除以 38.67 得到 mmol/L。用 SMD 合并不能代替单位换算,SMD 会把不同单位造成的 SD 差异当成效应差异。
# 只有中位数与四分位数时,在 metacont 中直接输入,meta 内部完成换算
# 默认:均值用 Luo 2018,SD 用 Shi 2020(有极差时)或 Wan 2014(只有 IQR 时)
d <- data.frame(study = c("A", "B", "C"),
n.e = c(40, 60, 35), med.e = c(12, 15, 11), q1.e = c(8, 10, 7), q3.e = c(20, 24, 18),
n.c = c(42, 58, 33), med.c = c(16, 19, 14), q1.c = c(11, 13, 9), q3.c = c(25, 30, 22))
mq <- metacont(n.e, median.e = med.e, q1.e = q1.e, q3.e = q3.e,
n.c = n.c, median.c = med.c, q1.c = q1.c, q3.c = q3.c,
data = d, studlab = study, sm = "MD")
cbind(mq$mean.e, mq$sd.e) # 研究 A:13.42、9.21
# 偏态数据可换用 McGrath 2020 的 Box-Cox 法(需要安装 estmeansd)
update(mq, method.mean = "BC-McGrath", method.sd = "BC-McGrath")
# metafor 等价函数
conv.fivenum(q1 = q1.e, med = med.e, q3 = q3.e, n = n.e, data = d)| 文献报告了什么 | 方法 | 前提与局限 |
|---|---|---|
| 中位数 + 四分位数(Q1、Q3) | 均值:Luo 2018;SD:Wan 2014(IQR 除以随样本量变化的系数,n 很大时接近 1.35) | 这些方法假设数据近似正态。偏态数据会低估均值和 SD;可用 Shi 2023 的偏度检验判断,偏态明显时改用 McGrath 2020 的 Box-Cox 或分位数估计法 |
| 中位数 + 最小值、最大值 | 均值:Luo 2018;SD:Wan 2014 | Handbook 6.5.2.6 不建议用极差估计 SD,极差受极端值影响大 |
| 中位数 + 四分位数 + 极差(五数概括) | 均值:Luo 2018;SD:Shi 2020 | 利用信息最多,误差最小 |
| 均值 + 95% CI | SD = √n ×(上限 − 下限)/(2 × t₀.₉₇₅,ₙ₋₁);n≥60 时 t 可用 1.96 | CI 由 t 分布算出时才成立 |
| 两组均值 + 组间 P 值或 t 值 | 由 t 值反推组间 SE,再求两组合并 SD | 文献只写 P<0.05 时,按 P=0.05 计算会高估 SD,结果偏保守 |
| 只给亚组的 n、均值、SD | 按 Handbook 表 6.5.a 公式合并为整组 | 不要把两个亚组当成两个研究分别纳入 |
| Cox 回归给出 HR 与 95% CI | ln(HR) 和 SE =(ln 上限 − ln 下限)/3.92 直接用 | 首选 |
| 只有 log-rank P 值和事件数 | Tierney 2007:ln(HR) 的方差 ≈ 4/总事件数(1:1 分配时) | 需要知道效应方向和分配比例 |
| 只有 Kaplan-Meier 曲线 | 用 WebPlotDigitizer 或 Engauge Digitizer 取点,再用 Tierney 表格(Parmar 法)或 Guyot 2012 算法重建个体数据后做 Cox 回归;R 包 IPDfromKM 实现了取点后的重建 | Guyot 2012 的验证表明,HR 只有在报告了风险人数表或总事件数时才能估得较准;两者都没有时,重建数据默认没有删失,事件数被高估,CI 偏窄 |
合并模型
Handbook 第 10.10.4 节明确:选择固定效应还是随机效应,不能依据异质性检验的结果。“I²>50% 用随机效应、否则用固定效应”是中文教程里最常见的错误做法。
| 决策 | 建议 | 依据与适用条件 |
|---|---|---|
| 固定还是随机 | 默认报告随机效应;方案中预先写明,固定效应作敏感性分析 | Handbook 10.10.4.1 不给统一推荐,但反对按异质性检验选择。两种模型权重分配不同:随机效应会提高小研究的权重,存在小研究效应时两者结果会分开 |
| tau² 估计方法 | REML | Handbook 2024 年更新后以 REML 为默认(10.10.4.4),RevMan 2025 年 1 月起默认 REML。Langan 2019 比较 9 种估计方法后推荐 REML;Veroniki 2016 认为 Paule-Mandel 在二分类和连续数据中都表现较好。DL 在小研究多、事件罕见时低估 tau² |
| 置信区间 | tau²>0 且研究数大于 2 时用 Hartung-Knapp(HKSJ,t 分布,自由度 k−1) | IntHout 2014 模拟中 DL 的 I 类错误率可超过 30%,HKSJ 最多约为名义值的两倍;689 个 Cochrane Meta 分析中,DL 下显著的结果有 25.1% 在 HKSJ 下不再显著 |
| 只有 2 个研究 | 不用 HK,用 Wald 型区间,并对不同方法做敏感性分析 | HK 在 k=2 时 t 分布自由度为 1,区间极宽(本页实测 RR 的 CI 为 0.004–19.2) |
| tau²=0 或 Q < k−1 | 用 Wald 型区间,或用修正 HK(mKH) | 这种情况下 HK 区间可能比 Wald 更窄(本页实测)。Röver 2015 建议在研究少且精度差异大时用修正版 |
| 预测区间 | 研究数 ≥5 且漏斗图无明显不对称时报告 | Handbook 10.10.4.3;自由度用 k−1(原为 k−2)。预测区间回答“下一个类似研究的真实效应可能落在哪里” |
| tau² 的 CI | Q-profile 法 | 研究数 ≥5 时才有参考价值 |
软件差异
多数“结果对不上”来自默认设置不同。投稿前在方法部分写明 tau² 估计方法、CI 方法、预测区间的分布和自由度、I² 的算法。
本页实测(dat.bcg,13 个研究,REML):meta 默认的预测区间为 RR 0.136–1.762(t 分布,k−1);按 Stata 的 K−2 自由度为 0.134–1.785;metafor 在 test = "z" 时为 0.155–1.549。同一数据的 I²,meta 按 Q 计算为 92.1%(95% CI 88.3%–94.7%),metafor 按 tau² 计算为 92.2%(CI 81.9%–97.7%)。
旧教程照抄会遇到的问题:meta 6.0 起 hakn = TRUE 改为 method.random.ci = "HK";comb.fixed 在 5.0 改为 fixed、5.5 再改为 common;byvar 在 5.0 改为 subgroup,8.5 中旧参数仍能运行但会给出 deprecated 警告;forest() 的 file 参数在 8.5 中改名为 filename。
| 设置 | RevMan(2025 年 1 月起) | Stata 16+ meta | R meta 8.5 | R metafor 5.0 |
|---|---|---|---|---|
| tau² 默认估计 | REML(旧版 RevMan 5 为 DL) | REML | REML | REML |
| 随机效应 CI | tau²>0 且 k>2 时提示用 HKSJ | Wald;加 se(khartung) 用 HK | Wald(method.random.ci = "classic");改为 "HK" | z 检验;test = "knha" 用 HK |
| 预测区间 | t 分布,k−1 | predinterval 选项,t 分布,K−2 | prediction = TRUE,t 分布,k−1(8.0 起,之前为 k−2) | predict():test = "z" 时用正态分布,test = "knha" 时用 t 分布 |
| I² 算法 | 由 tau² 计算(新) | 随机效应模型由 tau² 计算 | 默认由 Q 计算;method.I2 = "tau2" 可改 | 由 tau² 计算 |
| 零事件 | MH、Peto;0.5 连续性校正 | mhaenszel、peto;可设校正值 | MH 默认不加校正;可选 Peto、GLMM | rma.mh、rma.peto、rma.glmm |
| Egger 检验 / 剪补法 | 不提供 | meta bias, egger;meta trimfill | metabias;trimfill | regtest;trimfill |
| meta 回归 | 不提供 | meta regress | metareg | rma(mods = ~ …) |
异质性
亚组分析:亚组变量在方案中预先设定;用亚组间差异检验判断,不要比较各亚组的 P 值(一个亚组显著、另一个不显著不能说明有差异)。每个亚组的研究数太少时,亚组内随机效应几乎无法估计。本页实测中,按分配方式分 3 组时,固定效应下组间检验 P<0.0001,随机效应下 P=0.39,两种模型给出相反结论;只有 2 个研究的亚组用 HK 后 CI 为 0.016–20.8。
meta 回归:研究数少于 10 个时一般不做,每个协变量至少约 10 个研究(Handbook 10.11)。研究水平的协变量(如平均年龄)与结局的关系可能不反映个体水平关系,即生态学偏倚。meta 回归的 P 值建议用 Knapp-Hartung 调整(metafor 的 test = "knha"、Stata 的 se(khartung))。
Core GRADE(2025)判断不一致性时看点估计的分散程度和置信区间的重叠,并看各研究落在决策阈值哪一侧,不单凭 I² 降级。
| 指标 | 回答什么问题 | 常见误读 |
|---|---|---|
| Q 检验 | 观察到的差异是否超出抽样误差 | 研究少时检验效能低,P>0.10 不代表没有异质性;研究多、样本大时很小的差异也会显著 |
| I² | 观察到的总变异中,有多大比例来自研究间真实差异 | I² 是相对量,取决于研究精度:tau² 不变、研究样本量增大时 I² 会升到接近 100%(Rücker 2008)。I²=50% 无法告诉你效应在 40–60 之间还是 10–90 之间变化(Borenstein 2017)。Handbook 的分档(0–40%、30–60%、50–90%、75–100%)是重叠的,只作粗略参考 |
| tau²、tau | 真实效应在研究间的方差、标准差,与效应量同一尺度 | 研究少时 tau² 估计很不稳定,要报告 Q-profile CI |
| 预测区间 | 真实效应的分布范围 | 合并效应显著而预测区间跨过无效线,说明在部分场景中效果可能不存在,这是讨论部分要写的内容 |
发表偏倚
本页实测(dat.bcg,k=13):Egger 检验 P=0.19,Harbord P=0.32,Peters P=0.23,均不显著。剪补法用 meta 默认设置(ma.common = TRUE,即用固定效应模型迭代)补入 4 个研究,RR 从 0.49(0.34–0.70)变为 0.71(0.46–1.10),不再显著;设为 ma.common = FALSE 或用 metafor 的 trimfill(rma 对象) 只补入 1 个研究,RR 为 0.52(0.37–0.74)。这组数据的异质性主要来自纬度(见 meta 回归),属于 Peters 2007 所说的情形。
| 方法 | 使用条件 | 局限 |
|---|---|---|
| 漏斗图 | 至少 10 个研究;研究大小相近时不做 | 不对称说明存在小研究效应,原因可能是发表偏倚,也可能是小研究质量差、真实异质性、效应量与 SE 的人为相关或偶然(Handbook 表 13.3.b)。等高线漏斗图可以区分缺失区域是否落在不显著区 |
| Egger 回归检验 | 连续结局的 MD;≥10 个研究 | 对 OR 和 SMD,效应量与 SE 本身相关,原始 Egger 检验会出现假阳性;研究少时效能低 |
| Harbord / Peters 检验 | 二分类 OR | Peters 以 1/总样本量为自变量,避免了与 SE 的人为相关 |
| 剪补法 | 只作敏感性分析 | 假设不对称完全由发表偏倚造成;存在较大异质性时,即使没有发表偏倚也可能错误补入研究并低估效应(Peters 2007)。不同软件默认设置不同,结果可能差别很大(见本页实测) |
敏感性分析与 GRADE
证据确定性最终为高、中、低、极低四级,用 GRADEpro GDT 生成结果总结表。
| GRADE 因素 | 方向 | 怎么判断 |
|---|---|---|
| 起点 | — | RCT 从“高”开始,观察性研究从“低”开始(使用 ROBINS-I 时也可从高开始,再按偏倚降级) |
| 偏倚风险 | 降级 | 权重大的研究是否为高风险 |
| 不一致性 | 降级 | 点估计分散、CI 不重叠,且不能由预设亚组解释 |
| 间接性 | 降级 | 人群、干预、对照或结局与问题不符 |
| 不精确性 | 降级 | 95% CI 跨过最小重要差异(MID)或无效线(Core GRADE 2) |
| 发表偏倚 | 降级 | 漏斗图不对称、只有小样本企业资助研究 |
| 效应大、剂量反应、混杂会削弱效应 | 升级 | 主要用于观察性研究 |
- 换模型:固定效应与随机效应;tau² 用 REML、DL、PM 各算一次。
- 剔除高偏倚风险研究(RoB 2 判为高风险或 ROBINS-I 为严重/极严重)。
- 剔除经过换算的研究(由中位数估均值、由曲线重建 HR)。
- 零事件研究换一种处理方法(见常见错误)。
- 留一法:逐个剔除研究,报告合并效应的范围和是否有单个研究改变结论;用于发现影响点,不用于挑选让 I² 下降的研究组合。
- 主要结局只用调整后效应量或只用未调整效应量各算一次。
常见错误
多臂试验的共享对照组重复计入
A、B 两种剂量都与同一对照比较时,把两个比较都纳入同一合并,对照组人数被计算两次,权重偏大且两个结果相关。Handbook 23.3.4 推荐把相关的试验组合并为一组;拆分对照组人数只能部分解决问题。
同一人群的多篇报告分别纳入
主报告、亚组报告和长期随访报告常有不同作者顺序和题目。按注册号、入组时间、样本量核对,同一试验只纳入一次。
调整与未调整效应量混用
观察性研究中,部分研究报告多因素调整 HR,部分只有粗 HR 或原始计数,混合合并会把混杂控制程度不同的结果当成同一效应。方案中规定优先用调整最充分的结果,并做只含调整结果的敏感性分析。
零事件处理不当
单臂零事件时,倒方差法必须加连续性校正,0.5 校正会把结果拉向无效。双臂零事件的研究在 OR、RR 中默认被剔除。事件率低于 1% 且两组人数接近时 Peto 法偏倚最小;分组不均衡或效应很大时用不加校正的 MH 法或 GLMM(Bradburn 2007)。本页实测 rosiglitazone 数据中,方法不同会改变结论。
把 SE 当 SD
表格里写“均值 ± SE”的研究直接当 SD 用,SD 被低估 √n 倍,该研究权重和 SMD 都被放大。SD = SE × √n。提取时核对表注。
单位和方向不一致
不同单位的 MD 不能直接合并;量表方向相反(分数越高越好与越差)未统一时,合并效应被抵消。
为降低 I² 剔除研究
看到 I² 高就逐个删研究直到 I² 低于 50%,再报告剩余研究的结果,属于结果驱动的选择。异质性用预设的亚组或 meta 回归解释,解释不了的写入讨论并在 GRADE 中降级。
研究数不足仍做漏斗图和 meta 回归
5–6 个研究做 Egger 检验,P>0.05 被写成“无发表偏倚”。少于 10 个研究时写明未做检验及原因。
R 代码
以下代码可直接运行,示例数据随 metadat 包安装(install.packages(c("meta", "metafor")))。替换为自己的数据时,二分类结局需要每组的事件数和总人数四列。
# R 4.5.3 + meta 8.5-0 + metafor 5.0.1;示例数据 dat.bcg 来自 metadat 包(13 项 BCG 疫苗试验)
library(meta); library(metafor)
data(dat.bcg, package = "metadat")
bcg <- dat.bcg; bcg$study <- paste(bcg$author, bcg$year)
# 1. 合并:REML 估计 tau2,同时给出 Wald 与 Hartung-Knapp 两种 CI 和预测区间
m <- metabin(tpos, tpos + tneg, cpos, cpos + cneg, data = bcg, studlab = study,
sm = "RR", method = "Inverse", method.tau = "REML",
method.random.ci = "HK", prediction = TRUE)
summary(m)
update(m, method.random.ci = "classic") # Wald 型区间对照
# 2. 换 tau2 估计方法做敏感性分析
for (mt in c("DL", "REML", "PM")) print(update(m, method.tau = mt, method.random.ci = "HK"))
# 3. 森林图(meta 8.5 起保存文件的参数名为 filename)
forest(m, sortvar = TE, prediction = TRUE, print.tau2 = TRUE,
filename = "forest_bcg.png")
# 4. 漏斗图与小研究效应检验(k >= 10 才做;OR 结局用 Harbord 或 Peters)
funnel(m, type = "contour", common = FALSE)
metabias(m, method.bias = "Egger")
metabias(m, method.bias = "Peters")
# 5. 剪补法:明确写出迭代所用模型,否则 meta 与 metafor 结果不同
trimfill(m, ma.common = FALSE) # 随机效应迭代,与 metafor 一致
trimfill(m) # meta 默认:ma.common = TRUE(固定效应迭代)
# 6. 亚组与 meta 回归(研究数 >= 10 才做 meta 回归)
update(m, subgroup = alloc)
metareg(m, ~ ablat)
# 7. 留一法
metainf(m, pooled = "random")
# 8. metafor 写法:Hartung-Knapp 用 test = "knha",预测区间随之改用 t 分布
es <- escalc(measure = "RR", ai = tpos, bi = tneg, ci = cpos, di = cneg, data = bcg)
r <- rma(yi, vi, data = es, method = "REML", test = "knha")
predict(r, transf = exp)
regtest(r); trimfill(r); leave1out(r); confint(r)
# REML 不收敛(Fisher scoring algorithm did not converge)时:
# rma(yi, vi, data = es, control = list(stepadj = 0.5, maxiter = 1000))本页实测
运行条件:R 4.5.3、meta 8.5-0、metafor 5.0.1、metadat 1.6-0、IPDfromKM 0.1.10,macOS arm64。数据为 metadat 包内置的 dat.bcg(13 项 BCG 疫苗试验,RR)与 dat.nissen2007(42 项 rosiglitazone 试验,心梗)。
| 对比 | 结果 | 说明 |
|---|---|---|
| tau²:DL / REML / PM / ML | 0.309 / 0.313 / 0.318 / 0.280 | 合并 RR 均为 0.49 左右,研究数 13 时估计方法对点估计影响小 |
| Wald 与 HK(REML) | RR 0.489,CI 0.344–0.696(P=7×10⁻⁵)与 0.330–0.726(P=0.002) | HK 使 CI 变宽、P 值增大约 27 倍 |
| 固定效应与随机效应的权重 | 最大研究 TPT Madras:固定效应 41.4%,随机效应 10.2% | 固定效应 RR 0.65,随机效应 0.49;两者差距来自小研究效应更强 |
| 研究数 2 | Wald 0.134–0.527;HK 0.004–19.2 | k=2 时不用 HK |
| 研究数 4,tau²=0,Q=1.04<3 | Wald 0.188–0.310;HK 0.190–0.307;修正 HK 0.160–0.363 | HK 比 Wald 更窄,修正版纠正了这一点 |
| meta 回归(纬度) | 每增加 1 度纬度 ln(RR) 降 0.029;R²=75.6%,残余 I²=68% | KNHA 调整后 P 从 <0.0001 变为 0.005 |
| 留一法 | RR 0.452(去掉 TPT Madras)到 0.533(去掉 Hart & Sutherland) | 没有单个研究改变结论 |
| 零事件(42 项,4 项双零、26 项单臂零) | MH OR 1.28(0.95–1.73);Peto 1.43(1.03–1.98);IV+0.5 校正 1.29(0.94–1.76);GLMM 1.43(1.03–1.98) | Peto 与 GLMM 显著,MH 与 IV 不显著;该数据多项试验分组比例为 2:1,Peto 的均衡前提不满足,报告时要并列多种方法 |
| SMD:Hedges g 与 Cohen d | −0.536 与 −0.544(9 个研究) | 差别主要出现在 n<30 的小研究中 |
| 中位数转均值(对数正态,n=200,真值均值 23.3、SD 15.8) | Wan/Luo:20.4、11.5;Box-Cox(McGrath):22.5、13.3 | 偏态数据下正态假设方法低估 SD 约 27% |
| 由 KM 曲线重建 HR(模拟数据,真值 HR 0.568) | 有风险人数表:0.572(0.417–0.785),事件 160/163;无风险人数表:0.565(0.435–0.735),事件 231/163 | 没有风险人数时事件数被高估 42%,CI 偏窄,与 Guyot 2012 的结论一致 |
国内经验
以下内容来自中文期刊方法学文章、CSDN 专栏和方法作者提供的工具,只收录能与 Cochrane Handbook 或原始方法学论文对上的部分。CSDN 上大量 2025–2026 年的“Meta 分析避坑指南”是模板化文本,未采用。
连续性数据的“深度提取”
刘海宁等(中国循证医学杂志 2017 年第 17 卷第 1 期)整理了 7 种情形:由中位数和极值或四分位数估计、从图中取点、合并亚组、由均值 95% CI 反推 SD、由组间 P 值或 t 值反推合并 SD,并给出 Stata 与 Excel 的 t 分位数命令(invttail、T.INV.2T)。文中指出只有 P<0.05 时按 0.05 计算会高估 SD。与 Handbook 第 6 章一致。
Tierney 表格提取 HR 的操作
一篇 CSDN 专栏(2024 年 2 月)给出了 Engauge Digitizer 取点后填 Tierney 2007 Excel 的步骤:在 Sheet 2a 填坐标和随访期,在 Sheet 2b 对比模拟曲线与原曲线,差距大就重新取点,HR 及 CI 在 Sheet 4。与 Tierney 原文的说明一致。
童铁军团队的在线计算器先做偏度检验
Wan 2014、Luo 2018、Shi 2020 的作者团队(曾宪涛也是 Shi 2020 的作者之一)提供的在线计算器,要求先点“Detect the skewness”按 Shi 2023 方法检验偏度,显著偏态时提示不要用基于正态的方法。很多中文教程只引用公式,跳过了这一步。
“I²>50% 用随机效应”与“漏斗图 9 篇即可”
多篇 CSDN 和公众号教程沿用这两条规则。Handbook 10.10.4.1 明确不按异质性检验选模型;第 13 章要求漏斗图检验至少 10 个研究。审稿意见中这两点常被指出。
森林图里的权重不只与样本量有关
Bing 搜索“森林图”排第一的知乎文章写“样本量越大,权重越大”。这只在固定效应模型下近似成立;随机效应模型把 tau² 加到每个研究的方差上,大研究的权重被压低(本页实测中最大研究从 41.4% 降到 10.2%)。读图时看清每一列权重属于哪个模型。
交给 Agent
检索式编写、数据换算、合并分析和作图可以交给 Scientify 的科学智能体;纳入排除和偏倚风险判断仍需要你和合作者完成。
指令示例:“按附件的 PROSPERO 方案,对 12 项 RCT 的提取表做 Meta 分析:主要结局用 RR,随机效应 + REML + Hartung-Knapp,报告预测区间;中位数和四分位数按 Luo/Wan 换算并做偏度检验;按方案做亚组、留一法、剔除高偏倚风险研究的敏感性分析,输出森林图、漏斗图和方法段草稿。”
智能体在隔离云电脑中安装 R 的 meta、metafor 等包,读取提取表,检查 SE 与 SD 是否混淆、单位是否一致、多臂试验是否重复计入,完成换算、合并和全部敏感性分析,输出图表和与 PRISMA 2020 条目对应的方法段。智能体会对结果做对抗审阅,例如对比 REML 与 DL、HK 与 Wald 的结论是否一致,剪补法的迭代模型是否写明。工作区保留脚本、参数、日志和数据,可以复现;关闭本机后任务继续运行。
你仍需要自己核对:纳入排除决定、偏倚风险判断、效应量的方向与提取数值是否与原文一致、GRADE 评级的理由。
参考资料
- Cochrane Handbook 6.5 第 10 章:分析数据与 Meta 分析 — 10.4.3 效应量选择;10.4.4 零事件;10.5.2 变化值与 SMD;10.10.2 I² 分档;10.10.4 REML、HKSJ、预测区间;10.11 亚组与 meta 回归
- Cochrane Handbook 6.5 第 6 章:选择效应量与计算估计值 — Hedges g;IQR 与 SD;不用极差估 SD;HR 的提取(6.8.2)
- Cochrane Handbook 6.5 第 13 章:缺失结果导致的偏倚 — 漏斗图检验至少 10 个研究;不对称的其他原因;Egger 不适用于 OR 与 SMD
- Cochrane Handbook 6.5 第 23 章:多臂试验等特殊设计 — 共享对照组的重复计入与处理方法(23.3.4)
- Cochrane 统计方法组 2025 年 12 月通讯 — RevMan 2025 年 1 月 23 日更新:HKSJ、REML 默认、Q-profile、新 I² 算法、预测区间 k−1
- PRISMA 2020 声明(Page 等,BMJ 2021) — 27 个条目;条目 7 完整检索式;条目 8 筛选人数与独立性;新增证据确定性条目
- PROSPERO 新网站上线说明(2025 年 3 月) — 自动处理与发布、相似主题检索
- IntHout 等 2014:HKSJ 与 DL 比较 — DL 错误率可超过 30%;25.1% 的显著结果在 HKSJ 下不显著
- Langan 等 2019:9 种 tau² 估计方法的模拟比较 — 推荐 REML;DL 在小研究和罕见事件时负偏;PM 在研究大小差异大时正偏
- Veroniki 等 2016:研究间方差的估计方法综述 — 推荐 PM(二分类与连续)与 REML(连续);tau² 的 CI 用 Q-profile
- Röver 等 2015:HKSJ 及其修正版 — 研究少且精度差异大时推荐修正 HK
- Rücker 等 2008:过度依赖 I² 会误导 — tau² 不变时 I² 随研究精度升高
- Borenstein 等 2017:I² 不是异质性的绝对量 — 用预测区间表达效应的分布范围
- Peters 等 2007:剪补法在异质性存在时的表现 — 异质性大时可能错误补入研究;建议仅作敏感性分析
- Bradburn 等 2007:罕见事件的合并方法比较 — 事件率 <1% 且分组均衡时 Peto 最好;否则 MH(不加校正)、logistic 回归
- Wan 等 2014、Luo 等 2018、Shi 等 2020:由中位数等估计均值与 SD — Luo 2018 见 Stat Methods Med Res 27:1785;Shi 2020 见 Res Synth Methods 11:641
- McGrath 等 2020:非正态数据下的均值与 SD 估计 — Box-Cox 与分位数估计法;R 包 estmeansd
- 童铁军团队在线计算器(median2mean) — 先做 Shi 2023 偏度检验,再按 Luo/Wan/Shi 换算
- Tierney 等 2007:把汇总生存数据纳入 Meta 分析 — 由 P 值、事件数、生存曲线估计 HR,附 Excel 表
- Guyot 等 2012:由 KM 曲线重建个体数据 — HR 需要风险人数或总事件数才较准
- IPDfromKM(Liu 等 2021) — R 包与 Shiny 应用:取点、重建、核对精度
- RoB 2(Sterne 等 2019) — RCT 偏倚风险 5 个领域
- ROBINS-I V2 介绍(Cochrane,2025) — 算法化判断、不朽时间偏倚
- Stang 2010:NOS 的批判性评价 — NOS 评分的任意性
- Core GRADE 2、3(BMJ 2025) — 不精确性按 MID 判断;不一致性看点估计与 CI 重叠
- R 包 meta 更新日志 — 8.0 起预测区间 k−1、新增 method.I2;8.5 起 forest 参数 file 改为 filename;6.0 起 hakn 改为 method.random.ci
- metafor:rma 不收敛的处理 — Fisher scoring algorithm did not converge;stepadj、maxiter、换 PM
- Stata meta summarize 手册 — REML 默认;se(khartung);预测区间 t 分布 K−2
- 经验帖:纳入文献无均数与标准差时的深度提取(CSDN,转述刘海宁等 2017) — 由 CI、P 值、亚组反推 SD;适用于正态或 CI 由 t 分布算出的情形
- 经验帖:Engauge Digitizer 联合 Excel 模板从生存曲线提取 HR(CSDN) — Tierney 表格各 Sheet 的用法