NHANES教程:方差
本模块介绍了 NHANES 数据方差(采样误差)估计的基本概念。您将了解
1.NHANES 的复杂调查设计和数据聚类如何影响方差估计
2.在计算 NHANES 数据的方差时使用哪些方法是合适的
3.如何正确计算感兴趣的子组的方差
4.如何指定抽样设计常用统计软件包中的参数。
一般来说,反应抽样概率的统计权重和已选择样本的应答率会影响参数估计,而合并复杂的抽样(即差异加权、聚类和分层)将影响方差估计(估计标准误差从而检验统计量和置信区间)。
重要的提示
对于 NHANES 数据集,需要使用抽样权重和样本设计变量来获得无偏估计和准确的标准误差和置信区间。
NHANES 的方差估计
调查设计影响方差估计
如 NHANES 中的抽样模块所述,NHANES 具有复杂的多阶段概率集群设计。通常,一个集群(即县、学校、城市、人口普查区块)中的个体比其他集群中的个体更相似,并且给定集群中个体的这种同质性通过集群内相关性来衡量。在设计具有复杂样本的调查时,理想情况下,您希望减少集群内样本人员之间的相关性。为了实现这一点,您希望在每个集群中采样更少的人,但采样更的集群。但是,由于运营限制,例如移动调查 MEC 的成本和 PSU 之间的地理距离,NHANES 只能在 2 年的调查周期内对 30 个初级抽样单位 (PSU) 进行抽样。
对于像 NHANES 这样的复杂样本调查,使用标准统计软件包计算的方差估计值通常会过低(即,显着性水平被高估)并且存在偏差,因为它们没有考虑样本之间的差异加权和相关性集群内的人。由于个体是在集群内选择的,而不是在整个群体中随机抽样,因此存在精度损失和有效样本量的减少。
警告
假设简单随机抽样的标准统计软件包计算的方差估计通常太低且有偏差,因为它们没有考虑差异加权和集群内样本人之间的相关性。
复杂样本设计对方差估计的影响由设计效应 (DEFF) 衡量。它被定义为解释复杂样本设计的统计量的方差与基于相同规模的假设简单随机样本的相同统计量的方差之比。

如果 DEFF 为 1,则聚类抽样下的估计方差与简单随机抽样下的方差相同。NHANES 的 DEFF 通常大于 1。
当 DEFF 大于 1 时,有效样本量小于样本人数但大于聚类数。有效样本量的计算方法是将子组中的样本量除以 DEFF。设计效果是针对特定变量而非整个 NHANES 调查周期计算的统计数据的属性。由于地域、家庭内部相关性和人口统计异质性的差异,不同变量的 DEFF 可能会有很大差异。对于不同的人口统计亚组(即种族和西班牙裔或年龄组),变量的设计效果也可能不同。
重要的提示
必须使用说明抽样设计效应的统计软件来计算方差的渐近无偏估计,并应用于所有统计检验和置信限的构建。这些程序需要关于每个样本人的样本设计第一阶段(初级抽样单位和层的确定)的信息。
参考文献
Park, I and Lee, H (2004) "Design Effects for the weighted mean and total estimators under complex survey sampling." Survey methodology 30:183-193.
NHANES 中的方差估计方法
方差估计程序的简要说明
应计算所有调查估计的估计差异(抽样误差),以帮助确定统计可靠性。对于复杂的样本调查,通常没有准确的方差估计数学公式。需要方差逼近程序来提供合理的、近似无偏的和设计一致的抽样误差估计。解释复杂样本设计和计算设计效果的两个方差近似程序是复制方法和泰勒级数线性化。
目前 NCHS 建议在所有 NHANES 调查中使用泰勒级数线性化方法进行方差估计,本教程和示例代码仅对线性化方法提供帮助。SUDAAN、Stata、SAS 调查程序、SPSS 和 R 可用于获得此方法估计的方差。为了利用这些软件包,需要识别地层和初级抽样单位的调查设计变量。
最初,对于 NHANES 1999-2000 调查,使用删除一折刀(复制)方法来估计方差,这些权重可在该周期的公共使用文件中获得。平衡重复复制用于 NHANES III。如果复制方法用于其他调查周期,您必须计算自己的复制权重。
泰勒线性化程序
要使用线性化方法,调查数据文件中必须提供有关样本设计第一阶段(分层和初级抽样单位变量)的信息。为了保护调查参与者提供的信息的机密性并降低与两年数据发布相关的披露风险,“真实”设计变量不会在公共使用数据文件中发布。相反,在每个调查周期的人口统计数据文件中创建并提供了掩蔽方差单位 (MVU)。这些 MVU 产生的方差估计与使用真实设计变量估计的方差非常接近,并且应该用于对公开发布数据的所有分析。掩码方差单元伪层的变量名称是sdmvstra并且掩码方差单元伪 PSU 的变量名称是sdmvpsu。
如模块 2:样本设计中所述,NHANES 抽样的第一阶段从层中选择初级抽样单位。这可以被视为“有替换”抽样,因为抽样比例(所选初级抽样单位的数量与每个层内初级抽样单位的总数相比)很小。因此,有限总体校正因子 = (1 - 抽样分数) 接近 1,对基于设计的方差估计公式的影响可以忽略不计。
分析 NHANES 中的子组
通常,分析师希望对某些感兴趣的人口统计子组(例如特定年龄范围或性别)进行估计。(此类子组也可能在调查文献和软件文档中被称为“子群”、“域”或“子域”。)生成均值、百分比和总计等统计数据的点估计值的计算只需要观察属于您感兴趣的子群。然而,为了正确估计方差在使用泰勒级数线性化的这些统计数据中,您的统计软件需要权重变量的所有观察值都为非零值,以及记录在您感兴趣的亚群中的指标。例如,要估计 20 岁及以上男性的平均体重指数 (BMI) 及其标准误差,必须将具有检查体重的受检个体(包括女性和 20 岁以下的人)的整个数据集读入统计数据中。软件程序。
您可能想知道为什么方差估计需要包含不在您感兴趣的子群中的记录的信息。每个初级抽样单位内的子总体样本量实际上是一个随机变量。从概念上讲,如果使用原始复杂调查设计重复抽取样本,则每个初级抽样单位内感兴趣的子总体中的抽样人数会因样本而异。方差估计在计算估计统计量的变异性(例如 20 岁及 20 岁以上男性的平均 BMI 的标准误差)时考虑了子群体样本量中的这种样本间变异性。如果您要对数据集进行子集化并仅保留子总体中的记录,那么方差估计公式将有效地将子总体样本大小视为固定的。这将低估估计平均 BMI 的可变性。有关更多信息,请参阅建议的来源或有关调查统计的教科书。
警告
作为处理 NHANES 等复杂调查数据时的一般规则,在执行分析程序之前,永远不要从分析数据集中删除记录。相反,使用软件分析过程中提供的特殊语句来执行亚组分析。
在执行分析程序之前,不要根据任何与体重无关的兴趣组(例如人口统计、实验室或检查变量)创建较小的数据子集,这一点很重要。例如,在执行 SUDAAN 过程之前,您不应在 SAS 数据步骤中创建数据的子集。相反,强烈建议您使用subpopxSUDAAN 过程本身中的语句指定您感兴趣的子组。创建一个二元指示变量来定义您在 SAS 数据步骤中感兴趣的总体可能会有所帮助,然后您可以在subpopx语句中使用它。
每个可以分析复杂调查数据的软件包都有生成子组估计值的命令,同时正确考虑调查设计。下表总结了几个软件包中正确和不正确的亚组分析方法。有关亚组分析中的其他注意事项,请参阅下面的部分“NHANES 中亚组分析的自由度”。
在选定的统计软件中进行亚组分析的正确和不正确方法的总结:

参考
West BT, Berglund P, Heeringa SG. "A closer examination of subpopulation analysis of complex-sample survey data." Stata Journal. 2008;8(4):520-531.
Graubard BI, Korn EL. "Survey inference for subpopulations." Am J Epidemiol. 1996;144(1):102-106.
执行统计检验和计算置信限的自由度
复杂调查的自由度
连续 NHANES 使用复杂的多阶段概率抽样设计。独立信息的数量或自由度取决于初级抽样单位的数量而不是样本人数。给定初级抽样单位内的样本人不是独立的。
对于复杂的调查,设计自由度的计算方法是从第一阶段抽样选择的初级抽样单位(PSU)数中减去第一阶段抽样的聚类(层)数,如图所示下面的等式。连续 NHANES 的大多数两年公开数据发布都有 15 个自由度(30 个 PSU – 15 个层。)

执行假设检验和计算置信区间需要自由度。要根据 t 分布和选定的显着性水平计算 t 统计量的正确值,您必须为估计计算适当的自由度。
分析 NHANES 中的子群时的自由度
通常为 NHANES 总人口中的各种感兴趣的子组计算估计值。对于子组的分析,自由度应基于包含感兴趣观测值的层数和初级抽样单位数。当您分析可能未在所有阶层和初级抽样单位(例如,某些种族和族裔群体)中代表的样本人子组的数据时,与整体样本的估计值相比,这些估计值的自由度较低。

软件包在定义子组自由度的方式上有所不同,并且许多软件包无法校正子组的自由度减少,因为子组中并非所有初级抽样单位和层都表示。分析师应该了解他们使用的软件包如何决定自由度。可能需要从调查程序中输出初级抽样单位和地层的数量以计算正确的自由度。在 SUDAAN 中,该DESCRIPT过程允许用户输出子总体中代表的层数和初级抽样单位数。在其他包中,用户可能需要分别计算 PSU 和层的数量。有关计算子组的正确自由度和使用该信息计算置信区间的示例,请参阅示例代码页面。
警告
许多软件包不能纠正子组的自由度减少,其中没有代表所有初级抽样单位和层。分析师应该了解他们使用的软件包如何决定自由度。
要了解有关方差估计方法的更多信息,您可能希望查看NHANES 网站上的分析指南;阅读 Korn 和 Graubard 的文章(Korn EL and Graubard BI. Analysis of Health Surveys. Wiley Series in Probability and Statistics. 1999. New York, New York.);或参加 SUDAAN 或复杂调查抽样课程。
使用 SUDAAN 请求泰勒级数线性化以计算 NHANES 中的方差
本部分简要概述了如何请求泰勒级数线性化方法、指定调查设计变量以及使用 SUDAAN 正确计算感兴趣的亚群的方差。这些代码部分仅包括说明 NHANES 复杂样本设计所需的语句,不包括请求统计估计所需的所有代码。有关完整的具体示例,请参阅示例代码页。软件提示页面包含有关每个软件包的其他有用提示。
在 SUDAAN 中,用户必须在每个程序步骤中指定调查设计变量。该示例示出SUDAAN过程PROC DESCRIPT,但同样的语句将在其他过程中使用(例如PROC CROSSTAB,PROC REGRESS等)
PROC DESCRIPT data=one design=wr;
NEST sdmvstra sdmvpsu;
WEIGHT WTMEC4YR;
SUBPOPX ridageyr>=20;
* more statements...;
run;

SUDAAN 语法在 11.0.0 版中进行了描述,但该语法在未来的版本中可能会发生变化。查看您正在使用的软件版本的文档以进行任何更改。
使用 SAS 调查程序请求泰勒级数线性化以计算 NHANES 中的方差
本节简要概述了如何使用 SAS 调查程序请求泰勒级数线性化方法、指定调查设计变量以及正确计算感兴趣的子总体的方差。这些代码部分仅包括说明 NHANES 复杂样本设计所需的语句,不包括请求统计估计所需的所有代码。有关完整的具体示例,请参阅示例代码页。软件提示页面包含有关每个软件包的其他有用提示。
SAS 提供了许多调查分析程序,可以正确说明样本设计。该过程的名称都开始与调查-如SURVEYMEANS,SURVEYFREQ,SURVEYREG,等。(请注意,Base SAS 程序 – PROC MEANS、PROC FREQ等 – 未考虑 NHANES 的复杂样本设计。)
在 SAS 调查过程中,用户必须在每个过程步骤中指定调查设计变量。这个例子显示PROC SURVEYMEANS,但相同的语句将在大多数其他调查过程中使用(例如PROC SURVEYREG,PROC SURVEYLOGISTIC等)
PROC SURVEYMEANS data=one varmethod=taylor nomcar;
STRATA sdmvstra;
CLUSTER sdmvpsu;
WEIGHT WTMEC4YR;
DOMAIN Select;
* more statements...;
run;

SAS 语法在 9.4 版维护版本 3(SAS/STAT 14.1 版)中进行了描述,但该语法在未来版本中可能会发生变化。查看您正在使用的软件版本的文档以进行任何更改。
使用 Stata 请求泰勒级数线性化以计算 NHANES 中的方差
本节简要概述了如何请求泰勒级数线性化方法、指定调查设计变量以及使用 Stata 正确计算感兴趣的亚群的方差。这些代码部分仅包括说明 NHANES 复杂样本设计所需的语句,不包括请求统计估计所需的所有代码。有关完整的具体示例,请参阅示例代码页。软件提示页面包含有关每个软件包的其他有用提示。
Stata 的 SVY 命令是一系列专门用于分析 NHANES 等复杂调查设计的命令。在 Stata 中,用户必须首先使用svyset命令声明数据集的调查设计。然后,Stata 会记住这些调查设计特征并将它们应用于每个后续的 SVY 命令。(svyset如果您想在会话中更新调查设计规范,可以发出新命令。)通常,Stata 中的调查分析命令使用与标准数据分析命令类似的语法,但需要使用前缀svy:,从而调整结果svyset命令中指定的调查设计。
svyset [w=wtmec4yr], psu(sdmvpsu) strata(sdmvstra) vce(linearized)
svy, subpop(inAnalysis): mean Depression_Indicator

Stata 语法在版本 15 中进行了描述,但该语法在未来版本中可能会发生变化。查看您正在使用的软件版本的文档以进行任何更改。
使用 R 请求泰勒级数线性化以计算 NHANES 中的方差
本节简要概述如何请求泰勒级数线性化方法、指定调查设计变量以及使用 R 正确计算感兴趣的子总体的方差。这些代码部分仅包括说明复杂样本设计所需的语句NHANES,并且不包括请求统计估计所需的所有代码。有关完整的具体示例,请参阅示例代码页。软件提示页面包含有关每个软件包的其他有用提示。
R“survey”包提供了分析复杂调查数据的功能。在 R 中,用户必须使用该svydesign函数创建一个“调查设计对象”,其中包含数据框以及分析它所需的所有调查设计信息。然后将该调查设计对象作为参数传递给调查分析函数。
NHANES_all <- svydesign(data=One, id=~SDMVPSU, strata=~SDMVSTRA, weights=~WTMEC4YR, nest=TRUE)
NHANES <- subset(NHANES_all, inAnalysis==1)
svymean(~Depression, NHANES)

R 语法在版本 3.5.2 和调查包版本 3.35.1 中被描述,但语法可能会在未来版本中发生变化。查看您正在使用的软件版本的文档以进行任何更改。
最后编辑于 2022-10-09 · 浏览 1720