Stata数据处理:缺失值与多重补漏分析(一)

发布时间:2021-07-23 阅读 850

Stata连享会   主页 || 视频 || 推文 || 知乎 || Bilibili 站

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

New! lianxh 命令发布了:
随时搜索推文、Stata 资源。安装:
. ssc install lianxh
详情参见帮助文件 (有惊喜):
. help lianxh
连享会新命令:cnssc, ihelp, rdbalance, gitee, installpkg

课程详情 https://gitee.com/lianxh/Course

课程主页 https://gitee.com/lianxh/Course

⛳ Stata 系列推文:

PDF下载 - 推文合集

作者:孟佳音 (University College London)
邮箱jiayin.meng.20@ucl.ac.uk


目录


缺失值与多重补漏分析系列推文

1. 理解数据缺失

数据处理作为实证分析的基础,是一个十分繁琐的过程。我们搜集来的数据 (尤其是问卷调查数据) 往往存在各式各样的问题,其中最主要的问题之一就是存在缺失数据 (Missing data)。

如何更好的应对数据缺失的问题呢?本文将从数据缺失背后的理论机制讲起,作为 “数据缺失与多重插补” 专题的第一篇推文,力求帮助大家深入浅出地理解缺失数据的处理方法。

数据缺失的定义

  • 数据缺失 (Missing data) 是指那些实际未观测到,但是如果观测到会有意义的值。也就是说,缺失数据隐藏了有价值的信息。更直白点讲,计划收集用于研究,但未收集到的数据均可看作缺失数据。

数据缺失的原因

  • 信息未被采集到;
  • 信息被采集后丢失;
  • 信息被采集后认定有误并被删除。

数据缺失的影响

  • 削弱数据能效 (reduce power);
  • 分析过程中需要缺失数据满足相应假设 (analysis requires untestable assumptions);
  • 错误的假设可能导致结果偏误 (wrong assumptions can lead to bias)。

2. 数据缺失模式与机制

处理缺失数据的关键在于识别不同类型的缺失数据,针对不同类型的缺失数据,采用相匹配的处理方法。本小节从数据缺失模式 (pattern) 和数据缺失机制 (mechanism) 两方面进行讲解。

2.1 数据缺失常见模式

数据缺失模式 (missing data pattern) 是指在一个数据集中,数据观测值和数据缺失值的结构。其中最常见的模式有以下三种:

  • 单一模式 (Univariate Pattern):缺失值均属于同一个变量;
  • 单调模式 (Monotone Pattern):典型的面板数据中被调查对象退出调查且后续不再返回;
  • 一般模式 (General Pattern):缺失值在数据集中随机散布。

下图展示了三种不同的缺失数据模式,其中灰色部分表示数据缺失。

图 1:常见缺失数据模式
图 1:常见缺失数据模式

在 Stata 中,可用如下命令识别缺失数据:

misstable summarzie, gen (m_)
tab m_*
misstable pattern
misstable pattern, freq

2.2 数据缺失机制

Rubin (1976) 提出了被广为认可的数据缺失机制,用来描述缺失值存在的概率与数据的关系。他将缺失数据分为如下三种:

  • 完全随机缺失数据 (Missing Completely at Random Data,MCAR):数据缺失的概率与数据集中的任何数据均无关;
  • 随机缺失数据 (Missing at Random Data,MAR):变量 Y 数据缺失的概率与模型中其他变量相关,但与变量 Y 本身无关;
  • 非随机缺失数据 (Missing Not at Random Data,MNAR): 变量 Y 数据缺失的概率即使在控制其他变量以后,仍与 Y 本身有关。

由于这个定义容易让人产生混淆,本节内容借鉴 Enders (2010) 的做法,引入一个简单的例子进行概念描述。我们模拟一个员工试用期表现得分 (job performance rating),并与员工 IQ 测试得分 (IQ) 进行比较。下图展示了完全数据 (complete)、完全随机缺失数据 (MCAR)、随机缺失数据 (MAR) 和非随机缺失数据 (MNAR) 四种情况。

图 2:数据缺失模式举例
图 2:数据缺失模式举例

图中 MCAR 列表示的缺失数据是完全随机的;MAR 列表示的缺失数据只与 IQ 得分有关,IQ 得分低的数据存在缺失;MNAR 列表示的缺失数据与员工试用期表现得分本身相关,表现得分低的数据存在缺失。

3. 处理数据缺失的传统方式

常用的缺失数据处理方法可以总结成两大类,分别为直接删除法 (Deletion Method) 和单一插补法 (Single Imputation Method)。本节内容对两种常见方法进行简单的介绍,每种方法均有其适用情景以及相对应的优缺点。

3.1 直接删除法

直接删除法中最常用的方法为成列删除和成对删除:

  • 成列删除 (Listwise Deletion, Complete-Case Analysis):删除所有存在缺失值的个体;
  • 成对删除 (Pairwise Deletion, Available-Case Analysis):只删除需要用到的变量存在缺失值的个体。

直接删除法简单、易操作,但是它们要求缺失数据是「完全随机缺失数据 (MCAR)」,否则会产生明显的偏误。此外,即使缺失数据满足 MCAR 条件,直接删除法会造成数据的浪费,大大削弱分析的效能 (reduce power)。

3.2 单一插补法

单一插补 (Single Imputation) 名称的由来是因为这些方法为每个缺失的数据点生成一个单一的替换值,与多重插补 (Multiple Imputation) 是不同的。多重插补是创建数据集的多个副本,并对每个副本使用不同的估计方法来估算缺失值。本文只简单列举单一插补法中的不同方法,不做展开,有兴趣的读者可以参考 Enders (2010)。

  • 算术平均插补法 (Arithmetic Mean Imputation);
  • 回归插补法 (Regression Imputation);
  • 随机回归插补法 (Stochastic Regression Imputation)。

单一插补法的优势在于创建了完整的数据集,使那些在直接删除法中会被删除的数据得以利用。但是大部分单一插补法,即使在缺失数据是 MCAR 的情况下,均会产生有偏估计 (随即回归插补是例外,其是唯一可以对 MAR 数据产生无偏估计的方法)。此外,单一回归插补法会使「标准误被低估,导致置信区间过窄」。

4. 多重插补初探

多重插补法 (Multiple Imputation) 为单一插补法下的标准误低估问题提供了一个解决方案。其可以通过引入观测数据的可变性、估计插补模型的不确定性和生成插补值的不确定性增加数据的标准误。多重插补的理论源于是单一插补法中的随机回归插补,但是其数学基础来自贝叶斯估计。多重插补 (MI) 一般涉及以下三个步骤:

  • 插补阶段 (Imputation Phase):创建数据集的 m 个副本,每个副本中包含对缺失值的不同估计;
  • 分析阶段 (Analysis Phase):将分析模型拟合到 m 个数据集中;
  • 汇集阶段 (Pooling Phase):使用 Rubin 法则将 m 组结果汇集成一个结果。
图 3:多重插补步骤
图 3:多重插补步骤

Stata 中多重插补的操作可使用如下命令:

*准备工作
mi set flong/mlong/wide //为 MI 声明数据结构
mi register imputed     //声明要插补的变量

*插补阶段
mi impute regress/logit        //单一插补法
mi impute monotone/mvn/chained //多重插补法

*分析与汇集阶段
mi estimate  //分析并整合结果

5. 参考资料

  • Little, R. J., & Rubin, D. B. 2019. Statistical analysis with missing data (Vol. 793). John Wiley & Sons. -Book-
  • Enders, C. K. 2010. Applied missing data analysis. Guilford press. -Book-
  • Rubin, D. B. 1976. Inference and missing data. Biometrika, 63(3), 581-592. -PDF-
  • University College London PhD Course: Missing Data and Multiple Imputation for Cross-Sectional and Longitudinal Data

6. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh 缺失值 填充 贝叶斯
安装最新版 lianxh 命令:
ssc install lianxh, replace

相关课程

免费公开课

最新课程-直播课

专题 嘉宾 直播/回看视频
最新专题 文本分析、机器学习、效率专题、生存分析等
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]
  • Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。

课程主页

课程主页

关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 连享会-主页知乎专栏,400+ 推文,实证分析不再抓狂。直播间 有很多视频课程,可以随时观看。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法

连享会小程序:扫一扫,看推文,看视频……

扫码加入连享会微信群,提问交流更方便

✏ 连享会-常见问题解答:
https://gitee.com/lianxh/Course/wikis

New! lianxh 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh