Loading the dataset
data.test4 <- read.csv("/Volumes/TOSHIBA EXT/Dropbox/ADULT STUDY/adult_study011615.csv")
Creating a new variable that is the mean of all LIFE SATISFACTION questions
data.test4$LS <- apply(data.test4[, c("LS1","LS2", "LS3", "LS4", "LS5")], 1, mean, na.rm = TRUE)
Loading packedges
library(reshape2); library(car); library(Amelia);library(mitools);library(nlme)
## Loading required package: Rcpp
## ##
## ## Amelia II: Multiple Imputation
## ## (Version 1.7.3, built: 2014-11-14)
## ## Copyright (C) 2005-2015 James Honaker, Gary King and Matthew Blackwell
## ## Refer to http://gking.harvard.edu/amelia/ for more information
## ##
Reseting dataset into long version
data <- data.test4[,c("ID", "GROUP", "wave", "LS")]
data <- dcast(data, ID + GROUP ~ wave, mean, value.var = "LS")
data[,3:5] <- apply(data[,3:5],2,function(x) recode(x, "NaN = NA") )
data2 <- as.data.frame(mapply(c,data[,1:4], data[,c(1:3,5)]))
data2$wave <- rep(1:2, each=89)
names(data2) <- c("ID", "GROUP", "BASELINE", "LS", "WAVE")
Imputing missing data
MI <- amelia(data2, 5, idvars = c("GROUP","ID","WAVE"))
## -- Imputation 1 --
##
## 1 2 3 4 5 6 7
##
## -- Imputation 2 --
##
## 1 2 3 4 5 6
##
## -- Imputation 3 --
##
## 1 2 3 4 5 6 7 8 9
##
## -- Imputation 4 --
##
## 1 2 3 4 5 6 7
##
## -- Imputation 5 --
##
## 1 2 3 4 5 6
Creating new dataset with missing data imputed
data(MI$imputations)
## Warning in data(MI$imputations): data set 'MI$imputations' not found
LSwIM<-lapply(MI$imputations,function(X) {lme(LS ~ GROUP * WAVE + BASELINE, random = ~1 | ID, data = X, method = "ML")})
betas<-MIextract(LSwIM, fun=fixef)
vars<-MIextract(LSwIM, fun=vcov)
summary(MIcombine(betas,vars))
## Multiple imputation results:
## MIcombine.default(betas, vars)
## results se (lower upper) missInfo
## (Intercept) 1.8434723 0.43659597 0.9728309 2.7141138 26 %
## GROUP 0.4269963 0.52613148 -0.7043993 1.5583920 60 %
## WAVE 0.0703646 0.22074828 -0.3784065 0.5191357 38 %
## BASELINE 0.6140755 0.09532083 0.3998714 0.8282796 71 %
## GROUP:WAVE -0.1520858 0.29421662 -0.7635046 0.4593331 48 %