MedResearch Atlas临床科研图谱
CLINICAL EPIDEMIOLOGY · DESIGN · CAUSAL THINKING

Clinical Research Foundations

临床研究设计基础

从临床观察出发,用 PECO、目标估计量、研究设计、时间零点、因果图、效应量与敏感性分析构建可审计的临床证据链。

Beginner → IntermediateNo coding required / Statistics concepts10–14 h learningSynthetic longitudinal cohort
INPUT
EHR records · Registry tables · Follow-up data
OUTPUT
PECO protocol · Analysis cohort · Bounded clinical inference
FIGURES
Participant Flow · Kaplan–Meier · Forest Plot · Sensitivity Map
LEARNING OBJECTIVES

学完这一章,你应该能够

点击勾选不是“完成任务”,而是对自己的理解做一次承诺。

01 · QUESTION FIRST

临床数据不会自动产生临床证据

同一批病历既可以描述疾病负担、预测未来结局,也可以尝试估计策略效应;三者需要不同问题、设计与解释。

零基础解释

“用过药 A 的患者住院更少”可能因为药物,也可能因为医生把药给了更轻、随访更完整或更能耐受的患者。先设计比较,再运行模型。

专业解释

Clinical records arise from care processes. Sampling, treatment assignment, measurement, missingness and censoring jointly determine which causal contrasts are identifiable.

DESCRIBE现在发生了什么?

患病率、分布、医疗负担。

PREDICT谁更可能发生结局?

个体风险与校准,不要求每个变量都是原因。

CAUSE如果策略改变会怎样?

需要明确反事实比较与更强设计假设。

CORE TUTORIAL STRUCTURE · 统一学习骨架

临床研究基础:先建立全局地图,再进入细节

从患者、时间零点和目标估计量出发,理解设计如何决定临床数据能支持的结论。

第 1 层 · 基础单位

临床研究的基本单位是谁?

患者、就诊事件、器官或时间点可能形成多层数据,但独立推断单位必须由问题和采样设计定义。

先用一个类比建立直觉

一本病历有很多检查单,但通常仍来自同一位患者;检查单数量不是患者数量。

类比只帮助理解,不作为科研证据。
  1. 1区分患者、就诊和重复测量
  2. 2聚类与配对结构必须进入设计和模型

STROBE 要求观察性研究透明报告设计、场景、参与者、变量、偏倚、样本量、统计方法和结果;它是报告指南,不是研究质量评分。

02 · DEFINE THE CONTRAST

PECO 不是标题模板,而是分析契约

点击 P–E–C–O–T,检查每个临床概念是否已有可执行定义,并把它们压缩成一个目标估计量。

PECO-T 定义与 estimand 合成矩阵
字段可执行定义怎样改变最终估计
PPopulation初次使用抗纤维化治疗、无既往同类药物记录的成人 IPF 患者决定谁进入分母,以及结论能外推到谁
EExposure时间零点启动策略 A定义策略 A 的起点、允许窗口和实际接受的暴露
CComparator时间零点启动活性比较策略 B给出同一时间零点下未采用策略 A 的反事实参照
OOutcome24 个月内全因住院把事件、数据来源和观察窗写成可计算规则
TTime从首次处方日随访 24 个月把入组、分配和随访起点对齐,避免 immortal-time bias
SYNTHESIS · 五个字段怎样合成在符合条件患者中,策略 A 相对策略 B 的 24 个月住院风险差与风险比

分母来自 P;策略 A/B 来自 E/C;事件定义来自 O;风险窗口来自 T。任一字段改变,目标估计量、纳入记录和可解释人群都会一起改变,而不是只换一个标签。

03 · DESIGN

问题决定设计,已有数据只决定可行性

在四类常见设计之间切换,比较采样方向、适用问题、效应量和最重要限制。

Sampling→从暴露或策略向未来结局→Inference
适合回答
发病风险、预后与多个结局
常见效应量
Risk / rate / hazard contrasts
关键限制
混杂、失访与时间相关偏倚仍需设计控制。

随机试验通过随机分配保护基线可交换性,但仍需要透明报告入组、分配、随访、偏离和结局;CONSORT 2025 已取代 2010 版。

04 · CORE WORKFLOW

从临床观察到有边界结论的 20 步链条

点击任一节点,检查 WHY、INPUT、PROCESS、OUTPUT、PARAMETERS、QC、COMMON ERROR 与 NEXT。

STEP 7 / 20

Time Zero

时间零点

同时对齐入组资格、策略分配和随访开始。

WHY

同时对齐入组资格、策略分配和随访开始。

INPUT

纳入规则与索引事件

PROCESS

确定共同 index date

OUTPUT

无不死时间的起点

PARAMETERSindex date · grace period
QC三种时点必须在同一日或由方案明确处理。
COMMON ERROR用未来接受治疗定义暴露,却从更早日期开始计时。
05 · ALIGN TIME

时间零点对齐,是临床队列最重要的设计检查之一

切换三个情景,看 eligibility、strategy assignment 与 follow-up start 是否对齐,以及 immortal time 从哪里产生。

ELIGIBILITY → ASSIGNMENT → FOLLOW-UP
EligibilityDay 0AssignmentDay 0Follow-upDay 0-240 天0 天90 天

阶段 1 / 3:Aligned new-user design。 首次处方日同时确定资格、策略与随访开始。

阈值不是固定标准。先看数据分布、组织特性、测序深度、样本重复和研究问题。

目标试验框架通过显式写出资格、策略、分配、随访、结局和分析,帮助暴露观察性分析中的时间错位与自致偏倚。

06 · COHORT ASSEMBLY

先把临床概念版本化,再把记录变成队列

原始病历记录不是一人一行的研究表;每次映射都要保留定义、时间窗、单位和来源。

07 · OBSERVATION PROCESS

缺失和失访,是诊疗过程留下的信息

缺失率只是起点;更重要的是谁缺、何时缺、为什么缺,以及缺失是否同时关联比较策略和结局。

MEASUREMENT某项检验没做

可能由严重度、中心或治疗路径决定。

→
MISSINGNESS MODEL哪些已观测变量解释缺失?

将分析模型变量、结局和辅助变量纳入插补。

→
SENSITIVITY若仍有未观测原因?

改变假设并报告结论如何移动。

阈值不是固定标准。先看数据分布、组织特性、测序深度、样本重复和研究问题。

多重插补的有效性依赖插补模型、变量选择与可陈述的缺失假设;增加插补次数只降低 Monte Carlo 误差。

08 · BIAS

偏倚不是一张固定清单,而是数据如何进入比较的路径

在设计阶段写出选择、信息、混杂和时间相关偏倚,说明方向、来源和可检测信号。

01SELECTION谁进入或留在研究?

纳入、完整病例、失访、检测选择。

02INFORMATION暴露和结局如何被测量?

错分、组间检测频率、病历编码。

03CONFOUNDING谁同时影响比较与结局?

指征、严重度、医疗可及性。

04TIME何时开始归类和计时?

immortal time、prevalent user、延迟入组。

09 · CAUSAL STRUCTURE

不是所有相关变量都应该调整

切换四种调整方案,观察 confounder、treatment response 和 specialty testing 在图中的角色。

CAUSAL DAG · ADJUSTMENT SET
基线严重度Baseline severity已调整治疗Treatment治疗后反应Treatment response住院结局Hospitalization医疗可及性Care access专科检测Specialty testing症状Symptoms

阶段 2 / 4:Adjust severity。 调整暴露前共同原因,阻断后门路径。

阈值不是固定标准。先看数据分布、组织特性、测序深度、样本重复和研究问题。

DAG 把变量选择建立在共同原因、路径与条件化规则上;它不能从数据中自动发现真因果图,但能让假设显式、可争论。

10 · ESTIMAND

绝对效应与相对效应回答不同的临床问题

切换结局频率,观察同一 2×2 表怎样产生 risk difference、risk ratio 与 odds ratio。

GroupEventNo eventTotal
Exposed4006001000
Comparator2008001000
Risk difference20.0 pp
Risk ratio2.00
Odds ratio2.67

RR=2,而 OR=2.67;把 OR 叫风险倍数会夸大。

R · REPRODUCE

复算 2×2 表:同一批人,三种效应量

把上方 Common outcome 表中的事件与分母复算为 RD、RR、OR,并在明确二项独立样本假设后计算 RR 的近似区间。

可运行教学示例 · 安装依赖后整段执行

下载 .R
INPUT代码完整定义两组模拟事件数和人数;每人一次固定时间结局
ENVIRONMENTR 4.x;仅 base / stats 标准库,无外部文件、安装或联网操作。
统计单位

独立个体;每人一个固定时间二分类结局。

数据来源

本课程 Common outcome 合成 2×2 表,非真实患者,无论文图复制。

# Synthetic independent people, same fixed follow-up and event definition.
exposed_events <- 400
exposed_total <- 1000
comparator_events <- 200
comparator_total <- 1000
conf_level <- 0.95
cells <- c(exposed_events, exposed_total - exposed_events,
           comparator_events, comparator_total - comparator_events)
stopifnot(all(is.finite(cells)), all(cells > 0), all(cells == floor(cells)),
          conf_level > 0, conf_level < 1)
risk_e <- exposed_events / exposed_total
risk_c <- comparator_events / comparator_total
rd <- risk_e - risk_c
rr <- risk_e / risk_c
or <- (exposed_events / (exposed_total - exposed_events)) /
      (comparator_events / (comparator_total - comparator_events))
se_log_rr <- sqrt(1 / exposed_events - 1 / exposed_total +
                  1 / comparator_events - 1 / comparator_total)
z <- qnorm(1 - (1 - conf_level) / 2)
ci_rr <- exp(log(rr) + c(-1, 1) * z * se_log_rr)
result <- c(risk_exposed = risk_e, risk_comparator = risk_c,
            RD_percentage_points = 100 * rd, RR = rr, OR = or,
            RR_lower = ci_rr[1], RR_upper = ci_rr[2])
print(round(result, 4))
# Try 20 and 10 events at the same totals; RR stays 2, RD and OR change.

代码参数怎么调

先记录当前设置,每次只改变一个参数;比较下列输出检查,不用图是否好看来选择设置。

exposed_events = 400教学示例值 · 不是通用阈值

为什么用这个值:对应暴露组真实事件分子,本例只是可重算模拟输入。

增大 / 切换设置
总人数固定时提高暴露风险,RD、RR和OR均上升。
减小 / 回退设置
总人数固定时降低暴露风险,三个点估计下降。
调完后检查什么
  1. 核对事件定义、人数和共同随访窗口。

何时不适用 / 应停止:不能把多次事件或记录条数当独立患者;不能为显著性修改真实观察。

comparator_events = 200教学示例值 · 不是通用阈值

为什么用这个值:对照风险提供相对与绝对比较基准。

增大 / 切换设置
固定暴露组和人数时,RD、RR、OR下降。
减小 / 回退设置
三者上升;降到0时该log RR近似不能计算。
调完后检查什么
  1. 先读对照基线风险,再读RR。

何时不适用 / 应停止:病例对照按结局抽样时,此比例不是源人群的固定时间风险。

exposed_total / comparator_total = 1000 / 1000教学示例值 · 不是通用阈值

为什么用这个值:两组各自的独立人数,不是测量次数。

增大 / 切换设置
若事件数不变,对应风险降低;若按比例扩大四格,点估计不变而近似区间变窄。
减小 / 回退设置
事件数不变时风险提高;保持风险不变缩小人数,精度降低。
调完后检查什么
  1. 核对每组事件与非事件加和;更改分母后重查研究人群。

何时不适用 / 应停止:克隆记录不是增加独立样本;聚类/匹配设计需相应方差方法。

conf_level = 0.95本分析设置 · 需验证适用性

为什么用这个值:预先指定区间覆盖水平;95%是本示例选择,不是数据质量阈值。

增大 / 切换设置
临界值提高、区间变宽,点估计不变。
减小 / 回退设置
区间变窄,不能因此宣称证据增强。
调完后检查什么
  1. 比较0.90、0.95、0.99的区间及方向。

何时不适用 / 应停止:置信区间不量化未测混杂和测量偏倚;不能事后挑覆盖水平。

这段代码不能证明什么

不能调整混杂、解决缺失/删失、估计HR或证明治疗因果效应;近似置信区间不包含系统偏倚。

阈值不是固定标准。先看数据分布、组织特性、测序深度、样本重复和研究问题。

11 · TIME-TO-EVENT

生存分析同时观察事件与风险时间

每个时间点的比较来自仍在风险集中的人;删失需要清楚的规则与可辩护假设。

TIME ZERO共同起点
→
RISK SET仍未发生事件且在观察
→
EVENT结局发生
CENSOR观察停止
→
ESTIMATEKM / Cox / absolute risk

阈值不是固定标准。先看数据分布、组织特性、测序深度、样本重复和研究问题。

Kaplan–Meier 估计生存函数;Cox 模型比较风险集中的 hazard,并依赖 proportional-hazards 等模型假设。

12 · ANALYSIS

调整后的模型仍然继承设计中的全部限制

模型可以条件化已测变量,却无法恢复错误时间零点、未知目标人群或系统性错分。

ProtocolPECO · estimand
→
Designtime zero · comparator
→
AdjustmentDAG · overlap · diagnostics
→
Effect + uncertaintysensitivity · validation

阈值不是固定标准。先看数据分布、组织特性、测序深度、样本重复和研究问题。

E-value 可以量化一个未测混杂因子与暴露和结局分别需要多强的关联才可能解释观察结果,但不处理选择偏倚、测量误差或错误估计量。

13 · FIGURE READING

一张队列 Figure 如何反向追到临床问题?

切换 A–D Panel,检查入组流程、生存曲线、效应尺度和敏感性分析,并反向追踪到 PECO 与源记录。

原创教学重绘 · 模拟数据ACohort FlowSource records18,420Eligible new users3,106Complete time zero2,480BKaplan–Meier01224 moABCEffect EstimatesRisk ratioHazard ratioRisk differenceDSensitivity MapMain analysisAlt. exposureMultiple imputationCensoring weights
14 · DECISION PARAMETERS

临床参数首先改变目标人群和比较资格

回溯期、洗脱期、宽限期、随访、调整集和插补次数不能从通用阈值表复制。

AParticipant Flow · 数值可支持示范图形元素来自汇总数据,不代表原始影像
图形元素来自汇总数据,不代表原始影像

Participant Flow

回答
最终分析人群从哪里来?
误读
只给最终 N,隐藏每一步排除。
BBaseline Table · 数值可支持示范图形元素来自汇总数据,不代表原始影像
图形元素来自汇总数据,不代表原始影像

Baseline Table

回答
两组在测量的基线特征上是否可比?
误读
用基线 P 值代替临床相关差异与平衡诊断。
CKaplan–Meier · 数值可支持示范阶梯 = 生存估计;短线 = 删失
阶梯 = 生存估计;短线 = 删失

Kaplan–Meier

回答
未发生事件的估计概率如何随时间变化?
误读
把曲线分离直接解释为因果或忽略风险集减少。
DForest Plot · 数值可支持示范方块 = 点估计;横线 = 置信区间
方块 = 点估计;横线 = 置信区间

Forest Plot

回答
效应方向、大小与不确定性如何?
误读
按子组显著与否断言存在交互。
ELove Plot · 数值可支持示范图形元素来自汇总数据,不代表原始影像
图形元素来自汇总数据,不代表原始影像

Love Plot

回答
加权或匹配前后协变量平衡如何?
误读
平衡已测混杂不等于消除未测混杂。
FMissingness Map · 数值可支持示范图形元素来自汇总数据,不代表原始影像
图形元素来自汇总数据,不代表原始影像

Missingness Map

回答
哪些变量、时点和人群更容易缺失?
误读
只报告总缺失率而忽略结构。
15 · BETTER THINKING

临床研究最常见的 8 个推断错误

沿 Error → Consequence → Better Thinking 检查设计错误如何传播到模型、Figure 和结论。

ERRORCONSEQUENCEBETTER THINKING
01先看数据再定义问题选择性报告与数据驱动假设混入主分析。先写 PECO、目标估计量和主要结局。
02时间零点不对齐暴露组获得不可能发生结局的 immortal time。同步 eligibility、assignment 与 follow-up start。
03按单变量 P 值选混杂遗漏重要原因变量并可能加入 collider。基于领域知识、时间顺序和 DAG 预定义调整集。
04完整病例自动删除精度下降,并在缺失与结局相关时产生选择偏倚。描述缺失机制,比较插补、加权和完整病例假设。
05只报告 P 值看不到临床意义、效应大小和不确定性。报告事件数、绝对与相对效应及置信区间。
06把 OR 当 RR常见结局时夸大相对关联。明确效应尺度,能直接估计风险时同时给绝对风险。
07删失默认无信息差异失访会扭曲生存曲线和效应。报告原因、时间与组间差异,并做加权或敏感性分析。
08敏感性分析堆模型模型数量增加但没有针对具体偏倚。每个分析先写它检验哪个假设或失败模式。
16 · EVIDENCE BOUNDARY

调整后的关联可以更可信,但不是无限因果

把支持范围限制在已定义人群、比较、时间、测量与假设之内。

结果可以支持什么?

在已定义人群、比较策略和随访时间内估计关联或目标效应

量化绝对与相对效应及统计不确定性

在已测变量范围内评估平衡、模型假设与稳健性

识别需要随机试验、负对照或新数据验证的薄弱环节

不能单独证明什么?

仅凭观察性显著关联证明无残余混杂的因果效应

把队列中的平均效应直接外推到所有患者或个体治疗决策

用调整后的 P 值证明机制路径

用一次敏感性分析排除所有未测混杂、选择偏倚和测量误差

Association≠Mechanism≠Causality
17 · RESEARCH DECISIONS

用五个判断题检查临床推断

重点不是背术语,而是识别时间零点、变量角色、效应尺度、缺失假设和结论边界。

RESEARCH THINKING QUIZ0/5 已回答
Q1

研究者把“随访 90 天内曾接受治疗”定义为暴露组,却从诊断日开始计算生存时间。首要问题是什么?

Q2

疾病严重度影响治疗选择,也影响住院;治疗后的早期反应位于治疗到住院的路径上。估计治疗总效应时优先调整什么?

Q3

暴露组风险 40%,比较组风险 20%。下列哪项正确?

Q4

某基线变量缺失 22%,且缺失与医院和疾病严重度相关。最好的第一步是什么?

Q5

调整后 HR=0.78(95% CI 0.64–0.96),并通过多项敏感性分析。最合适的结论是?

18 · ONE-PAGE SUMMARY

把患者数据压缩成一条可复核证据链

任何 Figure 都应能沿 Effect → Model → Cohort → Time Zero → PECO → Clinical Question 反向追踪。

Clinical ObservationQuestion TypePECOEstimandDesignEligibilityTime ZeroExposureComparatorOutcomeFollow-upConfoundersData DictionaryCohortMissingnessModelEffectSensitivityBounded Conclusion
01

Data

数据怎样产生与变化

02

Method

每一步为什么存在

03

Figure

结果怎样被看见

04

Evidence

结论能够走多远

参考与数据声明

本页所有参与者、事件数、生存曲线、效应量和敏感性分析均为原创教学模拟,不对应真实患者或治疗效果。本教程用于科研教育,不构成诊疗建议,也不替代伦理审查、统计方案、数据治理或专业因果推断咨询。

REFERENCE INFRASTRUCTURE

参考文献与进一步阅读

References 支撑本章论断;Further Reading 负责下一步学习。两者不混为一谈。

9 篇
EVIDENCE SOURCES

研究设计与透明报告

支撑观察性研究、随机试验对照理解,以及问题、变量、偏倚和结果的透明报告。

[4]
COREoriginal method

Specifying a target trial prevents immortal time bias and other self-inflicted injuries in observational analyses

Miguel A. Hernán, Sonia Hernández-Díaz, James M. Robins. Journal of Clinical Epidemiology, 2016.

为什么推荐:时间零点与 immortal-time bias。

PMID 27237061 查看原文
LIBRARY →
EVIDENCE SOURCES

混杂、缺失与生存分析

支撑 DAG 调整、缺失数据、生存曲线、Cox 模型与未测混杂敏感性分析。