2. ADaM标准体系精读

ADaM(Analysis Data Model)不是“把SDTM再抄一遍”的中间层,而是面向统计分析、可追溯、可复现的分析数据集标准。理解ADaM标准体系,核心要抓住五件事:ADaMIG的文档结构、基本准则、数据集命名、变量命名与角色分类,以及合规检查点。这五件事共同决定了分析数据集能否被统计师直接使用、被审评人员快速核查、被程序稳定复现。

一、ADaMIG结构:从“规范文本”到“可执行约束”

ADaMIG(ADaM Implementation Guide)是ADaM标准的实施指南,通常与ADaM基本准则(ADaM Principles)配套使用。它的结构可以理解为四层:第一层是原则层,说明ADaM的总体目标、可追溯性、分析就绪、不重复原始数据等;第二层是数据集层,定义ADSL、BDS、OCCDS等标准数据集类型及其适用场景;第三层是变量层,规定每个标准变量的名称、标签、类型、角色、受控术语和派生规则;第四层是示例与检查层,通过示例数据集、变量表、检查清单帮助实施者判断是否合规。

ADaMIG不是“建议”,而是实施约束。例如ADSL必须包含USUBJID、SUBJID、SITEID、TRT01P、TRT01A、SAFFL、ITTFL、EFFFL等变量;BDS必须包含PARAMCD、PARAM、AVAL、AVALC、BASE、CHG、PCHG、ABLFL、ANL01FL等变量。这些变量不是可选项,而是分析程序能否直接调用的前提。

二、ADaM基本准则:分析就绪与可追溯

ADaM基本准则中最关键的是分析就绪(analysis-ready)和可追溯(traceability)。分析就绪意味着统计师拿到ADaM后,不需要再回到SDTM或原始数据做大量清洗和派生,就能直接跑主要分析。可追溯意味着每一个派生变量都能说明“从哪来、怎么算、为什么这样算”。

可追溯通常通过三类信息实现:一是变量级来源,如AVAL来自SDTM的VSORRES或LBORRES;二是记录级来源,如某条记录是否进入分析集;三是程序级来源,如派生程序名、派生日期、派生版本。实际项目中,常通过ADSL中的TRT01P、TRT01A、SAFFL、ITTFL、EFFFL等变量,把受试者层面的分析集和分组信息固定下来,再在BDS中通过USUBJID关联,形成“受试者—分析集—分析记录”的追溯链。

三、数据集命名规则:结构决定名称

ADaM数据集命名遵循“结构+内容”的逻辑。常见命名包括:

  • ADSL:Subject-Level Analysis Dataset,受试者水平分析数据集,每个受试者一行。
  • ADAE:Adverse Events Analysis Dataset,不良事件分析数据集。
  • ADLB:Laboratory Analysis Dataset,实验室检查分析数据集。
  • ADVS:Vital Signs Analysis Dataset,生命体征分析数据集。
  • ADTTE:Time-to-Event Analysis Dataset,时间事件分析数据集。
  • ADRS:Response Analysis Dataset,疗效反应分析数据集。

命名不是随意缩写,而是要让审阅者一眼判断数据集类型。BDS类数据集通常以“AD”开头,后接领域缩写;OCCDS类数据集如ADAE、ADCM、ADMH,通常以事件或干预领域命名。命名一旦确定,应在define.xml、SDRG和程序注释中保持一致。

四、变量命名与角色分类:角色决定用法

ADaM变量按角色可分为:标识变量(如STUDYID、USUBJID、SUBJID)、主题变量(如TRT01P、TRT01A、AGE、SEX)、时间变量(如ADT、ADTM、ASTDT、AENDT)、分析变量(如AVAL、AVALC、BASE、CHG、PCHG)、记录选择变量(如ANL01FL、ABLFL、SAFFL、ITTFL、EFFFL)和派生变量(如PARAMCD、PARAM、AVISIT、AVISITN)。

角色分类的意义在于:标识变量用于关联和去重;主题变量用于分组和描述;时间变量用于定义分析窗口;分析变量用于统计计算;记录选择变量用于筛选分析记录;派生变量用于把原始结果转化为可分析参数。例如在ADLB中,PARAMCD=“ALT”,PARAM=“Alanine Aminotransferase”,AVAL为实测值,BASE为基线值,CHG=AVAL-BASE,PCHG=(CHG/BASE)*100,ABLFL=“Y”标记基线记录,ANL01FL=“Y”标记进入主要分析的记录。

ADaM标准体系核心结构:从准则到合规检查 ADaMIG 结构 原则层 分析就绪 · 可追溯 · 不重复 数据集层 ADSL · BDS · OCCDS 变量层 名称 · 标签 · 类型 · 角色 示例与检查层 示例数据集 · 检查清单 关键约束 ADSL必含USUBJID/TRT01P BDS必含PARAMCD/AVAL 记录选择变量不可缺失 ADaM 基本准则 分析就绪 统计师可直接调用,无需回SDTM 分析集、分组、基线已固定 可追溯 变量级来源 · 记录级来源 程序级来源 · 派生规则 不重复原始数据 ADaM不替代SDTM 只做分析所需派生 追溯链示例 SDTM.LBORRES → ADLB.AVAL ADSL.SAFFL → 分析集筛选 USUBJID 关联受试者与记录 命名与角色分类 数据集命名 ADSL:受试者水平 ADAE/ADLB/ADVS:领域分析 ADTTE/ADRS:疗效分析 变量角色 标识:STUDYID/USUBJID/SUBJID 主题:TRT01P/TRT01A/AGE/SEX 时间:ADT/ADTM/ASTDT/AENDT 分析:AVAL/AVALC/BASE/CHG 选择:ANL01FL/ABLFL/SAFFL 派生:PARAMCD/PARAM/AVISIT 合规检查点 变量存在性 · 类型一致性 受控术语 · 派生可追溯 分析集标志 · 基线标志

五、常见合规检查点:从“看起来对”到“查得出”

ADaM合规检查通常分为结构检查、变量检查、值检查、追溯检查和程序检查。结构检查关注数据集是否存在、命名是否正确、每个受试者是否唯一;变量检查关注必含变量是否缺失、变量标签和类型是否与ADaMIG一致;值检查关注受控术语是否合法、日期格式是否为ISO 8601、数值变量是否可计算;追溯检查关注派生变量是否有来源说明、分析集标志是否与ADSL一致;程序检查关注派生程序是否可复现、日志是否有错误或警告。

实际工作中,可以用一份检查清单快速排查。例如:

检查项 检查内容 常见问题 判断依据
数据集命名 ADSL、ADAE、ADLB等是否符合标准 命名随意、大小写不一致 ADaMIG命名规则
必含变量 USUBJID、TRT01P、SAFFL等是否存在 缺失关键分析变量 ADaMIG变量表
变量类型 AVAL为数值、AVALC为字符 数值存成字符、日期格式错误 变量定义与SDRG
受控术语 SEX、RACE、PARAMCD等取值是否合法 自定义术语未说明 CDISC CT
派生可追溯 CHG、PCHG、BASE是否有来源 只给结果不给规则 派生程序与注释
分析集标志 SAFFL、ITTFL、EFFFL是否与ADSL一致 BDS与ADSL标志冲突 ADSL与BDS关联检查
实用提示:ADaM合规不是“最后再查”,而应在建库前就把ADaMIG变量表、命名规则、角色分类和检查清单固定下来。建议在项目启动阶段先完成ADSL变量映射,再逐层派生BDS和OCCDS,这样可追溯链最清晰,后期审阅和程序复现成本最低。

总结来看,ADaM标准体系的核心逻辑是:ADaMIG提供结构和约束,基本准则保证分析就绪与可追溯,命名规则让数据集可识别,变量角色分类让变量用法明确,合规检查点让实施结果可验证。掌握这五点,才能从“会做ADaM”进阶到“做出可审、可复现、可交付的ADaM”。