Description Usage Arguments Details Value Author(s) References See Also Examples
Forward Imputation of missing data
1 | ForImp(mat, p=2)
|
mat |
a matrix/dataframe |
p |
the parameter for computing the Minkowski distance used in the nearest neighbor procedure for missing value imputation.
|
The function implements the Forward Imputation algorithm (see reference) on a matrix of ordinal data with missing values. The algorithm alternates NonLinear Principal Component Analysis (NLPCA) on a subset of the data with no missing data and sequential imputations of missing values by the nearest neighbor method. This sequential process starts from the units with the lowest number of missing values and ends with the units with the highest number of missing values.
the imputed matrix
Alessandro Barbiero, Giancarlo Manzi, Pier Alda Ferrari
Ferrari P.A., Annoni P., Barbiero A., Manzi G. (2011) An imputation method for categorical variables with application to nonlinear principal component analysis,
Computational Statistics & Data Analysis, vol. 55, issue 7, pages 2410-2420
http://ideas.repec.org/a/eee/csdana/v55y2011i7p2410-2420.html
http://www.sciencedirect.com/science/article/pii/S0167947311000521
Ferrari P.A., Barbiero A., Manzi G.: Handling missing data in presence of ordinal variables: a new imputation procedure. In "New Perspectives in Statistical Modeling and Data Analysis", S. Ingrassia, R. Rocci, M. Vichi, Eds., Springer, 2011
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | set.seed(1)
# correlation matrix
sigma<-matrix(c(1,0.5,0.5,0.5,0.5,1,0.5,0.5,0.5,0.5,1,0.5,0.5,0.5,0.5,1),4,4)
# generate a 500*4 matrix from a multivariate normal
matc<-rmvnorm(n=500, mean=rep(0,4), sigma=sigma)
# transform the numerical values into ordinal categories (Likert scale)
# obtaining matrix mato
mato<-transfmatcat(matc,4)
# set the number of desired missing values
nummissing<-100
# create the random missing values, obtaining matrix mat
mat<-missingmat(mato, nummissing, pattern="r")
# use function \code{ForImp} to impute missing values, obtaining matrix mati
mati<-ForImp(mat)
# number of correct imputations
nummissing-sum(mati!=mato)
|
Loading required package: homals
Loading required package: sampling
Loading required package: mvtnorm
Warning messages:
1: In rgl.init(initValue, onlyNULL) : RGL: unable to open X11 display
2: 'rgl_init' failed, running with rgl.useNULL = TRUE
3: .onUnload failed in unloadNamespace() for 'rgl', details:
call: fun(...)
error: object 'rgl_quit' not found
[1] 27
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.