Imputation by Bayesian linear regression
Calculates imputations for univariate missing data by Bayesian linear regression, also known as the normal model.
mice.impute.norm(y, ry, x, wy = NULL, ...)
y |
Vector to be imputed |
ry |
Logical vector of length |
x |
Numeric design matrix with |
wy |
Logical vector of length |
... |
Other named arguments. |
Imputation of y
by the normal model by the method defined by
Rubin (1987, p. 167). The procedure is as follows:
Calculate the cross-product matrix S=X_{obs}'X_{obs}.
Calculate V = (S+{diag}(S)κ)^{-1}, with some small ridge parameter κ.
Calculate regression weights \hatβ = VX_{obs}'y_{obs}.
Draw a random variable \dot g \sim χ^2_ν with ν=n_1 - q.
Calculate \dotσ^2 = (y_{obs} - X_{obs}\hatβ)'(y_{obs} - X_{obs}\hatβ)/\dot g.
Draw q independent N(0,1) variates in vector \dot z_1.
Calculate V^{1/2} by Cholesky decomposition.
Calculate \dotβ = \hatβ + \dotσ\dot z_1 V^{1/2}.
Draw n_0 independent N(0,1) variates in vector \dot z_2.
Calculate the n_0 values y_{imp} = X_{mis}\dotβ + \dot z_2\dotσ.
Using mice.impute.norm
for all columns emulates Schafer's NORM method (Schafer, 1997).
Vector with imputed data, same type as y
, and of length
sum(wy)
Stef van Buuren, Karin Groothuis-Oudshoorn
Rubin, D.B (1987). Multiple Imputation for Nonresponse in Surveys. New York: John Wiley & Sons.
Schafer, J.L. (1997). Analysis of incomplete multivariate data. London: Chapman & Hall.
Other univariate imputation functions:
mice.impute.cart()
,
mice.impute.lda()
,
mice.impute.logreg.boot()
,
mice.impute.logreg()
,
mice.impute.mean()
,
mice.impute.midastouch()
,
mice.impute.mnar.logreg()
,
mice.impute.norm.boot()
,
mice.impute.norm.nob()
,
mice.impute.norm.predict()
,
mice.impute.pmm()
,
mice.impute.polr()
,
mice.impute.polyreg()
,
mice.impute.quadratic()
,
mice.impute.rf()
,
mice.impute.ri()
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.