一键完成复杂抽样加权(NHANES 等)回归分析的亚组(分层)分析及森林图的绘制

文摘   科学   2024-09-01 18:24   上海  


本文介绍了利用 MSTATA 软件,一键完成复杂抽样加权(NHANES 等)回归分析的亚组(分层)分析表格,并自动生成亚组森林图,得到满足论文发表所需的的所有 word 图表,可以直接投稿。


NHANES 等数据库,因为使用了复杂抽样设计,因此在分析时,需要 survey design 的分析方法,例如 survey Logistic 回归,survey Cox 回归等,在做亚组分析或者森林图时,平时使用的普通亚组分析和森林图工具派不上用场。因此我们需要更加傻瓜的工具来完成复杂抽样加权的亚组分析。


一键完成复杂抽样加权(NHANES 等)回归分析的亚组(分层)分析的论文发表级(Publication - ready) 表格:


当自变量为二分类(高中,高中以上两组)时:

当自变量为 连续性变量(年龄):


软件位于 www.mstata.com 进入软件后选 “复杂抽样加权(NHANES等)” 下拉菜单,选 “Domain(subgroup)analysis 回归分析的亚组分析(复杂抽样加权)” 模块。


复杂抽样设计

许多调查使用复杂抽样设计而非简单随机抽样。这有多种原因。例如,如果构建列出总体中每个单位的抽样框架很困难或可能导致错误,可以使用多阶段抽样,先抽取较大且易于列出的单位群体,然后在每个群体内调查某些或全部单位,这样可以在现场构建准确的抽样框架。在多阶段抽样中,首先抽取主抽样单位(PSU)(例如,家庭),然后在每个PSU内抽取单位(例如,家庭中的个体)。当然,可以有超过两个阶段的抽样。早期阶段的单位形成簇。

另一个使用复杂抽样设计的原因是简单随机样本可能会导致某些感兴趣的子群体样本量过小。例如,如果关注种族/民族特定的平均血压,研究人员可能希望增加较小子群体的样本量。简单随机样本可能会导致多数种族/民族的样本量较大,而少数群体的样本量较小。与其增加总体样本量以确保较小群体的足够样本量,不如使用不等概率抽样对大群体进行欠抽样,对小群体进行过抽样,这样更具成本效益。

一种不等概率抽样的方法是在一些多阶段抽样设计中按比例概率抽样(PPS),其中较大的PSU有更大的被选中概率。另一种是分层随机抽样,即首先将总体非随机地分成若干层(例如,地理区域),然后在每层内进行简单随机抽样。将总体分层成不等大小的层,然后在每层内进行简单随机抽样,会导致不等概率抽样,因为较小层中的个体有更大的被选中概率。

NHANES

国家健康与营养检查调查(NHANES)是一个具有复杂设计的调查的例子。

NHANES样本不是简单随机样本,而是使用复杂的多阶段概率抽样设计来选择参与者,以代表美国民间非机构化人口。还对某些人口子群体进行过度抽样,以提高这些特定子群体健康状况指标估计的可靠性和精确性。研究人员需要在分析中适当指定抽样设计参数。

简而言之,NHANES采用了分层四阶段抽样设计。首先,根据人口普查区域和其他地理信息构建分层(非随机)。在每个分层内,随机选取美国县(PSU),较大的县有更大的被选中概率。在县内,按比例选取街区。在街区内,随机选取家庭,并对某些年龄、种族和收入群体进行过度抽样(较高的选中概率)。最后,在家庭内随机选取个体。有关NHANES复杂抽样设计的完整描述,请参见官方NHANES教程。

NHANES网站提供了使用survey软件包分析NHANES数据的示例R代码,以及在分析NHANES数据时的一些特殊考虑。

亚组(分层)分析的定义和概念

亚组分析是指在总体研究样本中,根据某些特征将样本划分为若干亚组,并在每个亚组内进行独立的分析。其目的是探讨不同亚组在某些特定特征下的差异,揭示出整体分析中可能被忽视的细节。亚组分析通常应用于回归分析之后,以进一步细化研究结果,使其更具针对性和实用性。

为什么回归分析之后要做亚组分析?

虽然回归分析可以揭示总体样本的趋势和关系,但不同特征(如年龄、性别、疾病分期等)可能对结果有不同的影响。通过亚组分析,我们可以:

  1. 识别异质性:揭示不同亚组之间的差异,识别是否存在某些亚组对治疗或干预有不同的反应。

  2. 提高结果的外推性:通过细分亚组,研究结果更能代表不同特征人群,提高其外推性。

  3. 制定个性化治疗策略:在医学研究中,不同亚组的患者可能需要不同的治疗方法,亚组分析可以帮助制定更为精准的治疗策略。

医学研究的例子

自变量为二分类变量的例子

例如,在一项研究中,探讨两种药物(药物A和药物B)对某种疾病的治疗效果。研究者首先进行总体样本的回归分析,得出药物A和药物B在总体人群中的效果。然而,考虑到疾病的分期和等级可能影响药物效果,研究者进一步进行亚组分析,将样本根据疾病的分期(如T1、T2、T3、T4)和等级(如I、II、III)分为不同亚组,分别分析各亚组内两种药物的效果。

通过亚组分析,研究者发现:

  • 在疾病分期为T1的亚组中,药物A的效果优于药物B。

  • 在等级为I的亚组中,药物B的效果显著优于药物A。这种细化的分析结果可以帮助医生根据患者的具体情况选择更合适的药物。

自变量为连续变量的例子

例如,在一项研究中,探讨患者的血糖水平(一个连续变量)对心脏病风险的影响。研究者首先进行总体样本的回归分析,得出血糖水平与心脏病风险之间的关系。然而,考虑到不同性别和年龄段可能影响血糖水平与心脏病风险之间的关系,研究者进一步进行亚组分析。

研究者将样本按性别(男性和女性)和年龄段(如年轻组、中年组和老年组)分为不同亚组,然后分别分析在不同亚组中,血糖水平对心脏病风险的影响。

通过这种分析,研究者可能会发现:

  • 在男性老年组中,血糖水平较高与心脏病风险显著增加相关。

  • 在女性年轻组中,血糖水平与心脏病风险之间没有显著相关性。

这种分析有助于了解在不同性别和年龄段中,血糖水平对心脏病风险的具体影响,从而帮助制定更加个性化的预防和治疗策略。

P值和P for interaction的意义

在亚组分析中,P值和P for interaction是两个重要的统计指标:

  1. P值:在每个亚组内,P值用于检验在该亚组中自变量(如血糖水平)与结果变量(如心脏病风险)之间的关系是否显著。P值越小,说明关系越显著。通常,P值小于0.05被认为有统计学显著性。

  2. P for interaction:P for interaction用于检验不同亚组之间的效果是否有显著差异。它衡量的是连续变量(如血糖水平)与结果变量之间的交互作用。如果P for interaction值小于0.05,说明不同亚组间的效果差异具有统计学显著性,这意味着血糖水平对心脏病风险的影响在不同亚组中有显著差异。

总之,亚组分析通过细化研究对象,揭示了不同特征人群的差异,帮助制定更为精准的治疗策略。P值和P for interaction则为这种差异提供了统计学依据,使研究结果更为可靠和科学。

准备数据

NHANES数据的下载地址在 https://wwwn.cdc.gov/nchs/nhanes/

这里我们可以点击下方下载一段样例数据片段来做测试:

下载csv样例数据(右击另存为)

在本说明书中,我们使用了2017周期的NHANES数据,因此以下信息来自该周期。数据集中包含以下变量以考虑抽样设计:

  • 分层变量(SDMVSTRA):共有15个分层。

  • 主要抽样单位(SDMVPSU)

  • 访谈抽样权重(WTINT2YR)

  • 检查抽样权重(WTMEC2YR)

  • 空腹子样本抽样权重(WTSAF2YR):

在使用NHANES数据时,请务必查阅相关数据文档和代码手册,以确保使用适当的抽样权重。

使用方法

进入软件界面,首先进行如下设置:

设置复杂抽样参数

请按照以下步骤设置您的复杂抽样参数:

  1. 选择分层变量

  • 在设置界面中,找到“请选择代表分层(strata)的变量”选项。

  • 从下拉菜单中选择一个变量,该变量代表数据中的分层信息。例如,在NHANES数据库中,这个变量通常是SDMVSTRA。

  • 背景知识:分层抽样(Stratified Sampling)是一种将总体分为若干个互不重叠的层,然后在每个层内进行随机抽样的方法。这种方法可以提高估计的精确性,特别是在总体内部具有较大异质性的情况下。例如,在NHANES中,不同地理区域(如不同的州或县)可能存在健康状况的差异,通过分层抽样可以确保每个区域的代表性。

  • 如果您的数据不需要分层,请选择“无”。

  • 选择主抽样单位(PSU)变量

    • 选择完分层变量后,系统会自动弹出“请选择代表主抽样单位(id)的变量”选项。

    • 从下拉菜单中选择一个变量,该变量代表数据中的主抽样单位(PSU)。例如,在NHANES数据库中,这个变量通常是SDMVPSU。

    • 背景知识:主抽样单位(Primary Sampling Unit, PSU)是多阶段抽样中的第一层单位。在NHANES中,PSU通常是县或县级等价单位。在每个PSU内,再进一步抽取次级单位(如家庭或个人)。这种方法可以减少调查成本,提高抽样效率。

    • 确保所选变量不同于分层变量。

  • 选择权重变量

    • 访谈权重(WTINT2YR):如果您的分析仅使用在访谈中收集的数据,则选择此权重。每个参与者都接受了访谈,因此每个人的访谈抽样权重都大于0。

    • 检查权重(WTMEC2YR):如果您的分析包含体检数据,则应选择此权重。大多数参与者在移动检查中心(MEC)接受了体检,收集了客观测量数据。

    • 空腹子样本权重(WTSAF2YR):如果您的分析包含空腹血液测量数据,则应选择此权重。只有部分参与者在空腹状态下提供了血液样本,因此需要使用相应的权重进行调整。

    • 选择完PSU变量后,系统会自动弹出“请选择代表权重(weights)的变量”选项。

    • 从下拉菜单中选择一个权重变量。权重变量有助于确保样本的代表性。在NHANES数据库中,常见的权重变量有WTINT2YR、WTMEC2YR等。

    • 背景知识:权重(Weights)是用于调整样本统计量以反映总体参数的因子。在复杂抽样设计中,由于不同单位被抽中的概率不同,直接使用样本统计量可能会产生偏差。权重的作用是校正这种偏差,使估计值更接近于总体参数。例如,在NHANES中,不同个体的被抽中概率不同,通过使用合适的权重,可以确保结果具有全国代表性。

    • 选择权重的指南(简化版,仅做示例)

    • 注意:选择权重变量非常复杂,以上只是一个简要规则,实际规则比这个复杂,请务必登录和参考NHANES官网的说明书,对于选择哪个权重有详细的规则说明,以确保选择适当的权重。

  • 处理权重缺失值

    • 将权重缺失值用0填充

    • 将权重缺失的数据整行删除

    • 将权重缺失以及权重≤0的数据整行删除(Cox回归请勾选此项)

    • 在权重变量选择下方,您需要选择如何处理权重变量中的缺失值。

    • 选项包括:

    • 背景知识:在调查数据中,权重缺失值可能会影响分析结果的准确性。不同处理方法可以应对不同的分析需求和数据质量问题。例如,将缺失值填充为0可以保留数据行,但可能导致偏差;而删除权重缺失的数据则可以提高结果的准确性,但会减少样本量。

  • 设置嵌套集群标识(Nest)

    • 选择是否应用嵌套集群标识。如果您的数据集的ID值在分层中是嵌套的(如NHANES数据库),推荐选择“是”。

    • 选择“是”可以确保在每个分层内,集群ID是唯一的,避免分析时出现问题。

    • 背景知识:嵌套集群(Nested Clusters)是指在复杂抽样设计中,主抽样单位ID在不同分层内可能重复。通过设置嵌套集群标识,可以确保每个分层内的集群ID是唯一的,从而避免在数据分析时出现混淆和错误。例如,在NHANES中,不同地理区域可能有相同的PSU ID,通过嵌套设置可以确保分析的准确性。

    3. 完成设置

    完成以上设置后,您的数据就准备好进行复杂抽样加权的回归亚组分析了。请确保所有步骤都已正确完成,以确保分析结果的准确性。

    参考资料

    • NHANES官网:提供关于分层、PSU和权重变量的详细说明。

    • NHANES教程:提供关于权重选择和多周期数据合并的详细指南。

    重要提示

    在使用本软件进行分析时,务必遵循NHANES提供的指导原则和说明,以确保结果的准确性和科学性。特别是对于权重变量的选择和处理,请仔细阅读相关文档和说明书。

    亚组分析操作步骤

    一、选择结局变量的类型

    1. 进入软件后,选择“回归分析”模块。

    2. 在“选择结局变量的类型”部分,根据您的研究需求,选择适合的回归模型:

    • 二分类变量(Logistic回归,例如是否转移,是否客观缓解等)

    • 连续性变量(线性回归,例如生物标志物值等)

    • 生存变量(Cox回归,例如总生存期(OS),无进展生存期(PFS),无病生存期(DFS)等)

    二、选择结局变量/应变量

    根据您在第一步选择的结局变量类型,进行相应的操作:

    • Logistic回归

    1. 系统会自动筛选数据库中所有的二分类变量。

    2. 在“请选择结局变量/应变量”下拉菜单中,选择您的结局变量。

  • 线性回归

    1. 系统会自动筛选数据库中所有的连续性变量。

    2. 在“请选择结局变量/应变量”下拉菜单中,选择您的结局变量。

  • Cox回归

    1. 系统会自动筛选数据库中所有的连续性变量。

    2. 在“请选择代表时间的变量”下拉菜单中,选择表示时间的变量(如从开始到死亡的时间,或从开始到末次随访时间)。

    3. 系统会自动筛选数据库中所有的二分类变量。

    4. 在“请选择代表患者最终状态的变量”下拉菜单中,选择表示患者最终状态的变量(如1代表发生事件,0代表删失)。

    三、选择结局变量的水平

    • Logistic回归和Cox回归

    1. 系统会自动检测结局变量的所有水平。

    2. 在“请下拉选择结局变量的哪个水平表示发生事件”下拉菜单中,选择表示发生事件的水平(注意:选中的水平在建模时系统会设定为1,剩下的水平会设定为0)。

    四、选择解释变量/自变量

    1. 在“要研究的解释变量/自变量的类型”部分,选择变量类型:

    • 二分类变量

    • 连续性变量

  • 系统会根据您的选择筛选相应的变量。

  • 在“请点击选择要研究的解释变量/自变量”下拉菜单中,选择您的解释变量/自变量。

  • 五、选择参照组和观察/试验组(仅针对二分类解释变量)

    1. 系统会自动检测解释变量的所有水平。

    2. 在“请下拉选择参照组”下拉菜单中,选择参照组。

    3. 在“请下拉选择观察/试验组”下拉菜单中,选择观察/试验组。

    六、选择混杂因素(协变量)

    1. 系统会自动筛选数据库中所有的变量。

    2. 在“请点击选择需要调整的混杂因素(协变量)”下拉菜单中,选择需要调整的混杂因素(协变量),可多选。

    七、对连续变量进行尺度转换或标准化处理

    1. 系统会列出所有连续性变量。

    2. 根据需要,对每个连续性变量选择相应的处理方法:

    • 不做处理

    • 中心化处理(centered)

    • 标准化处理(standardized)

    • 进行Log变换

    八、选择亚组分析字段

    1. 系统会自动筛选数据库中所有的分类变量。

    2. 在“请点击空白框选择代表亚组的字段”下拉菜单中,选择代表亚组的字段,可多选。

    九、生成/更新亚组分析结果

    1. 点击“生成/更新亚组分析结果”按钮,系统会根据您的选择进行亚组分析,并展示结果。

    亚组分析结果:

    生成森林图:

    真实世界数据
    介绍真实世界数据,真实世界研究和真实世界证据
     最新文章