#############################################################################
# EXAMPLE 1: Saving and loading BIFIE data objects
#############################################################################
data(data.timss1)
data(data.timssrep)
bifieobj <- BIFIE.data( data.list=data.timss1 , wgt= data.timss1[[1]]$TOTWGT ,
wgtrep=data.timssrep[, -1 ] )
summary(bifieobj)
# save bifieobj in a compact way
save.BIFIEdata( BIFIEdata=bifieobj, name.BIFIEdata="timss1_cdata" )
# save bifieobj in a non-compact way
save.BIFIEdata( BIFIEdata=bifieobj, name.BIFIEdata="timss1_data", cdata=FALSE )
# load this object with object name "bdat2"
bdat2 <- load.BIFIEdata( filename = "timss1_data.Rdata" )
summary(bdat2)
# save bifieobj with selected variables
save.BIFIEdata( bifieobj, name.BIFIEdata="timss1_selectvars_cdata" ,
varnames= bifieobj$varnames[ c(1:7,13,12,9) ] )
# the same object, but use the non-compact way of saving
save.BIFIEdata( bifieobj, name.BIFIEdata="timss1_selectvars_data" , cdata=FALSE ,
varnames= bifieobj$varnames[ c(1:7,13,12,9) ] )
# load object timss1_cdata (in compact data format)
bdat3 <- load.BIFIEdata( filename = "timss1_cdata.Rdata" )
summary(bdat3)
# save selected variables of object bdat3
save.BIFIEdata( bdat3, name.BIFIEdata="timss1_selectvars2_cdata" ,
varnames= bifieobj$varnames[ c(1:4,12,8) ] )
#############################################################################
# EXAMPLE 2: Writing BIFIEdata objects
#############################################################################
data(data.timss2)
data(data.timssrep)
# create compactBIFIEdata
bifieobj <- BIFIE.data( data.list=data.timss2 , wgt= data.timss2[[1]]$TOTWGT ,
wgtrep=data.timssrep[, -1 ] , cdata=TRUE)
summary(bifieobj)
# save imputed datasets in format csv2
write.BIFIEdata( bifieobj, name.BIFIEdata="timss2_save1", type="csv2", row.names=FALSE)
# save imputed datasets of BIFIEdata object in format table without column names
# and code missings as "."
write.BIFIEdata( bifieobj , name.BIFIEdata = "timss2_save2" , type="table" ,
col.names=FALSE , row.names=FALSE , na="." )
# save imputed datasets of BIFIEdata object in format csv and select some variables
# and only the first three datasets
varnames <- c("IDSTUD","TOTWGT","female","books","lang","ASMMAT")
write.BIFIEdata( bifieobj , name.BIFIEdata = "timss2_save3" , type="csv" ,
impdata.index = 1:3 , varnames=varnames)
# save imputed datasets of BIFIEdata object in format Rdata, the R binary format
write.BIFIEdata( bifieobj , name.BIFIEdata = "timss2_save4" , type="Rdata" )
# save imputed datasets in sav (SPSS) format
write.BIFIEdata( bifieobj , name.BIFIEdata = "timss2_save5" , type="sav" )
#############################################################################
# EXAMPLE 3: Loading BIFIEdata objects saved in separate files
# (no indicator dataset)
#############################################################################
# We assume that Example 2 is applied and we build on the saved files
# from this example.
#***--- read Rdata format
# extract files with imputed datasets and replicate weights
files.imp <- miceadds::grep.vec( c("timss2_save4__IMP" , ".Rdata" ) ,
list.files(getwd()) )$x
file.wgtrep <- miceadds::grep.vec( c("timss2_save4__WGTREP" , ".Rdata" ) ,
list.files(getwd()) )$x
# select some variables in varnames
varnames <- scan( nlines=1, what="character")
IDSTUD TOTWGT books lang migrant likesc ASMMAT
# load files and create BIFIEdata object
bifieobj1 <- load.BIFIEdata.files( files.imp , wgt="TOTWGT" , file.wgtrep ,
type="Rdata" , varnames=varnames )
summary(bifieobj1)
#***--- read csv2 format
files.imp <- miceadds::grep.vec( c("timss2_save1__IMP" , ".csv" ) ,
list.files(getwd()) )$x
file.wgtrep <- miceadds::grep.vec( c("timss2_save1__WGTREP" , ".csv" ) ,
list.files(getwd()) )$x
bifieobj2 <- load.BIFIEdata.files( files.imp, wgt="TOTWGT", file.wgtrep , type="csv2" )
summary(bifieobj2)
#***--- read sav format
files.imp <- miceadds::grep.vec( c("timss2_save5__IMP" , ".sav" ) ,
list.files(getwd()) )$x
file.wgtrep <- miceadds::grep.vec( c("timss2_save5__WGTREP" , ".sav" ) ,
list.files(getwd()) )$x
bifieobj3 <- load.BIFIEdata.files( files.imp , wgt="TOTWGT" , file.wgtrep , type="sav" ,
to.data.frame=TRUE , use.value.labels=FALSE )
summary(bifieobj3)
#############################################################################
# EXAMPLE 4: Loading BIFIEdata objects saved in separate files
# (with an indicator dataset)
#############################################################################
data(data.timss1)
data(data.timss1.ind)
data(data.timssrep)
# create BIFIEdata object at first
bifieobj <- BIFIE.data( data.list=data.timss1 , wgt= "TOTWGT" ,
wgtrep=data.timssrep[, -1 ] )
summary(bifieobj)
#--- save datasets for the purpose of the following example
write.BIFIEdata( BIFIEdata=bifieobj, name.BIFIEdata="timss1_ex" , type="Rdata" )
# save indicator dataset
save( data.timss1.ind , file="timss1_ex__IND.Rdata" )
# grep file names
files.imp <- miceadds::grep.vec( c("timss1_ex__IMP" , ".Rdata" ) ,
list.files(getwd()) )$x
file.wgtrep <- miceadds::grep.vec( c("timss1_ex__WGTREP" , ".Rdata" ) ,
list.files(getwd()) )$x
file.ind <- miceadds::grep.vec( c("timss1_ex__IND" , ".Rdata" ) ,
list.files(getwd()) )$x
# define variables for selection
varnames <- c("IDSTUD","TOTWGT","female","books","lang","ASMMAT")
# read files using indicator dataset
bifieobj2 <- load.BIFIEdata.files( files.imp , wgt="TOTWGT" , file.wgtrep=file.wgtrep ,
file.ind=file.ind, type="Rdata" , varnames=varnames)
summary(bifieobj2)
# read files without indicator dataset
bifieobj3 <- load.BIFIEdata.files( files.imp , wgt="TOTWGT" , file.wgtrep=file.wgtrep ,
type="Rdata" , varnames = varnames)
summary(bifieobj3)
# compare some descriptive statistics
res2 <- BIFIE.univar( bifieobj2 , vars = c("books" , "ASMMAT" , "lang") )
res3 <- BIFIE.univar( bifieobj3 , vars = c("books" , "ASMMAT" , "lang") )
summary(res2)
summary(res3)
Run the code above in your browser using DataLab