分享

缺失值分析与期望最大算法(EM)估计缺失值

 Memo_Cleon 2023-04-26 发布于上海

期望最大算法(Expectation Maximization AlgorithmEM是一种迭代算法,可用于含有隐变量或缺失数据的概率模型参数的极大似然估计方法。每次迭代由两个核心步骤组成:求期望步(ExpectionE-Step和最大化步(MaximizationM-StepE步利用当前的参数估计值(初次迭代时需要赋予一个初始化参数)来计算出缺失变量的后验概率(即缺失变量的期望值),作为缺失值的估计值;M步是根据E步中的估计值寻找使似然函数最大时对应的参数。然后利用M步获得的参数返回E步进行下一次的迭代直至收敛【笔者数学不好,以上对迭代步骤的理解可能不恰当】EM是一种非常稳健的缺失值估计方法,可以很好的处理大多连续性变量的数缺失值问题。

示例同《缺失值的插补:随机森林法(二)》,数据来自R语言VIM包的diabetes数据集(Indian Prime Diabetes Data)。

软件采用SPSS

Analyze>>Missing Value Analysis

SPSS中的缺失值分析可以实现(1)缺失模式分析,包括缺失值在哪里、缺失范围有多广、某些变量是否更倾向于成对缺失、数据是否存在极值、缺失值是否是随机缺失;(2)提供不同处理方法的缺失值的估计均值、标准差、协方差和相关性;(3)缺失值列表删除(listwise)和成对删除(pairwise)、缺失值回归填充和EM填充。选中列表(listwise)将会删除选择变量中含缺失值的所有记录,输出全体无缺失值数据的均值、标准差、协方差和相关性。而成对(pairwise)则是不考虑其他变量,仅删除单个考察变量中含缺失值的记录,输出该变量无缺失数据的成对频率、均值、标准差、协方差和相关性。

列表、成对和回归估计需要满足这样一个假设:缺失模式不取决于数据值,即数据缺失为完全随机缺失(MCAR)。当数据缺失机制为MCAR时,所有的估计方法(包括EM方法)都可以对相关性和协方差给出一致和无偏估计。如果违反MCAR假设,可能导致列表、成对和回归方法产生有偏估计,此时可以考虑使用EMEM可用于随机缺失(MAR的数据,即缺失数据的模式仅与观测到的数据有关。对于非随机缺失数据MANR,数据的缺失和自身取值有关),目前尚无有效的方法来分析。

【缺失模式】输出缺失值模式及范围。可以选择按缺失值模式分组输出(制表格式)、仅输出缺失值个案和所有个案。添加到“附加信息”中的变量将在缺失模式表中显示平均值(定量变量)或者每个类别中具有该模式的案例数(分类变量)。

【描述】默认的单变量统计量输出变量缺失值的数量、均数、标准差,同时显示缺失值、极大值和极小值的例数和百分比。指示符变量分析可提供一些缺失模式的一些信息。每个含有缺失值的变量都会生成一个指示符变量,指示符变量将按照变量是否缺失缺失记录将数据分为两个组。[不匹配记录百分比]不匹配(mismatch)指的是在一对变量中,某条记录的一个变量是缺失值而另一个变量不是缺失值。对角线元素对应的是单个变量缺失值的百分比。此外,还有[由指示符标识的两组之间的t检验][分类变量和指标变量的交叉表],以及[省略缺失值案例少于5%的变量]的选项。需要注意的是这里的P值更合适用于单次检验如果需要进行多次的t检验,其P值并不适用

【变量】用于选择用于估计缺失值的变量。默认情况下,所有定量变量都用于EM和回归估计。如果有必要,也可以选择特定的变量作为预测变量Predicted variables因变量,需要估计的缺失值变量)解释变量Predictor variables

EM根据指定的分布的似然性进行缺失值的推断,默认为正态分布。还可以将缺失值填补后的完整数据集保存为新的文件。

结果与解读

单变量统计:显示每个变量的样本量、均值、标准差,以及缺失值例数和百分比、极大值和极小值。

由指示符标识的两组之间的t检验:以怀孕次数缺失与否的年龄均值为例,年龄较小的受试者更倾向于不报告怀孕次数:怀孕次数缺失的受试者平均年龄为27.60岁,而怀孕次数无缺失的受试者平均年龄是34.19岁。实际上SkinThicknessPregnciesInsulin的缺失似乎可以影响到好几个变量的均值,这提示这些变量可能不是完全随机缺失,可将这些变量选入【缺失模式】中的附加信息框进一步查看本例存在多次的t检验,显著性检验的P值来判定并不合适。

分类变量与指示变量的交叉表:可通过类别的频率来大体判断缺失值在分类变量中是否存在差异。本例只有一个分类变量,指示变量的缺失数量在无糖尿病受试者和糖尿病患者中的相差并不大,受试者患糖尿病与否貌似并不影响其他变量的缺失。

指示变量的不匹配变量百分比:PregnciesSkinThicknessInsulin缺失值比例分别为14.45%29.56%48.70%,这在单变量统计表中也可以看到。非对角线的数据表示不匹配(mismatch)记录的百分比,以SkinThicknessPregncies35.68%为例,其表示SkinThickness为缺失值且Pregncies不为缺失值(195例),以及SkinThickness不为缺失值且Pregncies为缺失值(79例)的总数占总例数(768例)的百分比。

制表格式的缺失模式:结果显示,有5种联合缺失模式的病例数超过1%【注意表格下方注释,仅显示病例数超过1%的模式,比例可在[缺失模式]按钮中修改】,其中SkinThicknessInsulin共同缺失的比例远高于其他组(可结合专业解释为何如此),同时也可以很清楚地看到PregnciesSkinThicknessInsulin的均值随着缺失模式的不同的变化情况。如果是完全随机缺失,这种变化不应该太大。

如果【缺失模式】选择了缺失个案格式或者所有个案格式。结果中的+表示极大值;-表示极小值;S表示系统缺失值;A表示用户自定义的缺失值,如用户有多种缺失值的定义方法,则会用到BC

EM估计均值和和标准差:分别显示不含缺失值的数据(all values)以及缺失值填充后完整数据(EM)的均值和标准差。

EM均值:同上表的EM部分。表格下方的脚注部分显示Little's MCAR检验结果:Chi2=241.631P<0.001Little's MCAR检验的无效假设是数据是完全随机缺失MCAR。本例P<0.001,尚不能证明数据是完全随机缺失,这跟我们从描述性统计和表格模式中得出的结论类似。

同样在EM协方差EM相关性表格下方的脚注中也可以查看Little's MCAR的检验结果。

当然还有最终生成的含有缺失值插补结果的完整数据集,后续的分析只需要用这个完整的数据集进行就可以了。

END

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多