# mice.impute.bygroup: Groupwise Imputation Function In alexanderrobitzsch/miceadds: Some Additional Multiple Imputation Functions, Especially for 'mice'

## Description

The function `mice.impute.bygroup` performs groupwise imputation for arbitrary imputation methods defined in mice.

## Usage

 `1` ```mice.impute.bygroup(y, ry, x, group, imputationFunction, ...) ```

## Arguments

 `y` Incomplete data vector of length `n` `ry` Vector of missing data pattern (`FALSE` – missing, `TRUE` – observed) `x` Matrix (`n` x `p`) of complete covariates. `group` Name of grouping variable `imputationFunction` Imputation method for mice `...` More arguments to be passed to imputation function

## Value

Vector of imputed values

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63``` ```## Not run: ############################################################################# # EXAMPLE 1: Cluster-specific imputation for some variables ############################################################################# library(mice) data( data.ma01, package="miceadds") dat <- data.ma01 # use sub-dataset dat <- dat[ dat\$idschool <=1006, ] V <- ncol(dat) # create initial predictor matrix and imputation methods predictorMatrix <- matrix( 1, nrow=V, ncol=V) diag(predictorMatrix) <- 0 rownames(predictorMatrix) <- colnames(predictorMatrix) <- colnames(dat) predictorMatrix[, c("idstud", "studwgt","urban" ) ] <- 0 method <- rep("norm", V) names(method) <- colnames(dat) #** groupwise imputation of variable books method["books"] <- "bygroup" # specify name of the grouping variable ('idschool') and imputation method ('norm') group <- list( "books"="idschool" ) imputationFunction <- list("books"="norm" ) #** conduct multiple imputation in mice imp <- mice::mice( dat, method=method, predictorMatrix=predictorMatrix, m=1, maxit=1, group=group, imputationFunction=imputationFunction ) ############################################################################# # EXAMPLE 2: Group-wise multilevel imputation '2l.pan' ############################################################################# library(mice) data( data.ma01, package="miceadds" ) dat <- data.ma01 # select data dat <- dat[, c("idschool","hisei","books","female") ] V <- ncol(dat) dat <- dat[ ! is.na( dat\$books), ] # define factor variable dat\$books <- as.factor(dat\$books) # create initial predictor matrix and imputation methods predictorMatrix <- matrix( 0, nrow=V, ncol=V) rownames(predictorMatrix) <- colnames(predictorMatrix) <- colnames(dat) predictorMatrix["idschool", ] <- 0 predictorMatrix[ "hisei", "idschool" ] <- -2 predictorMatrix[ "hisei", c("books","female") ] <- 1 method <- rep("", V) names(method) <- colnames(dat) method["hisei"] <- "bygroup" group <- list( "hisei"="female" ) imputationFunction <- list("hisei"="2l.pan" ) #** conduct multiple imputation in mice imp <- mice::mice( dat, method=method, predictorMatrix=predictorMatrix, m=1, maxit=1, group=group, imputationFunction=imputationFunction ) str(imp) ## End(Not run) ```

alexanderrobitzsch/miceadds documentation built on Nov. 17, 2018, 1:18 p.m.