既不mice
也不hmisc
提供来自插补过程的参数估计。两者Amelia
兼而有之imputeMulti
。在这两种情况下,您都可以提取参数估计值并将它们用于估算您的其他观察值。
Amelia
假设您的数据以多元正态分布(例如 X \sim N(\mu, \Sigma)。
imputeMulti
假设您的数据分布为多元多项式分布。也就是说,完整的细胞计数是分布的 (X \sim M(n,\theta)),其中 n 是观察次数。
拟合可以通过示例数据如下完成。检查参数估计值如下所示。
library(Amelia)
library(imputeMulti)
data(tract2221, package= "imputeMulti")
test_dat2 <- tract2221[, c("gender", "marital_status","edu_attain", "emp_status")]
# fitting
IM_EM <- multinomial_impute(test_dat2, "EM",conj_prior = "non.informative", verbose= TRUE)
amelia_EM <- amelia(test_dat2, m= 1, noms= c("gender", "marital_status","edu_attain", "emp_status"))
- 函数的参数估计值在和
amelia
中找到。amelia_EM$mu
amelia_EM$theta
- 中的参数估计值可在
imputeMulti
中找到IM_EM@mle_x_y
并可通过该get_parameters
方法访问。
imputeMulti
相对于其他 3 个包中的任何一个,分类数据的插补精度明显更高,尽管它只接受多项式(例如factor
)数据。
所有这些信息都在当前未发布的imputeMulti
. 该论文已提交给 JSS,我正在等待回复,然后再将小插图添加到包中。