缺失值
缺失值总体分为两类:
- 随机缺失(MAR,Missing at Random)
- 非随机缺失(MNAR,Missing NOT at Random)
一般来说,认为缺失5%以内的缺失值可以接受。如果哪个变量或观测(样本)的缺失超过5%,可能就需要考虑将其删除。
MICE包
全名:Multivariate Imputation by Chained Equations
- 假定数据的缺失是MAR(随机缺失)
- 随机缺失意味着某个值的缺失可能是依赖于其他值的
- MICE填补缺失值:使用其他变量对缺失变量$X_1$进行回归,用回归结果填补$X_1$的缺失
默认情况下,对连续型数据采用线性回归进行拟合填补,对分类型变量采用逻辑回归进行拟合填补。
MICE使用的拟合方法:
- 数值型变量:PMM(Predictive Mean Matching)
- 二分类变量:logreg(Logistic Regression)
- 多分类变量:polyreg(Bayesian Polytomous Regression)
- 有序分类变量:(Proportional Odds Model)
1 | install.packages("mice") ## 安装 |
1 | install.packages('mice') |
- 每一行是一种缺失模式
- 左边的数字表示有多少个样本是这种缺失模式
- 下方的数字表示每列(每个变量)的缺失值个数
- 右边的数字表示每行(每个样本)的缺失值个数
mice
1 | data_imputed <- mice(iris.miss, m = 5, maxit = 50, method = 'pmm', seed = 206) |
1 |