showClass("sdcMicroObj")
## Not run:
# data(testdata)
# sdc <- createSdcObj(testdata,
# keyVars=c('urbrur','roof','walls','water','electcon','relat','sex'),
# numVars=c('expend','income','savings'), w='sampling_weight')
# head(sdc@manipNumVars)
# ### Display Risks
# sdc@risk$global
# sdc <- dRisk(sdc)
# sdc@risk$numeric
# ### use addNoise without Parameters
# sdc <- addNoise(sdc,variables=c("expend","income"))
# head(sdc@manipNumVars)
# sdc@risk$numeric
# ### undolast
# sdc <- undolast(sdc)
# head(sdc@manipNumVars)
# sdc@risk$numeric
# ### redo addNoise with Parameter
# sdc <- addNoise(sdc, noise=0.2)
# head(sdc@manipNumVars)
# sdc@risk$numeric
# ### dataGen
# #sdc <- undolast(sdc)
# #head(sdc@risk$individual)
# #sdc@risk$global
# #sdc <- dataGen(sdc)
# #head(sdc@risk$individual)
# #sdc@risk$global
# ### LocalSuppression
# sdc <- undolast(sdc)
# head(sdc@risk$individual)
# sdc@risk$global
# sdc <- localSuppression(sdc)
# head(sdc@risk$individual)
# sdc@risk$global
# ### microaggregation
# sdc <- undolast(sdc)
# head(get.sdcMicroObj(sdc, type="manipNumVars"))
# sdc <- microaggregation(sdc)
# head(get.sdcMicroObj(sdc, type="manipNumVars"))
# ### pram
# sdc <- undolast(sdc)
# head(sdc@risk$individual)
# sdc@risk$global
# sdc <- pram(sdc,keyVar="water")
# head(sdc@risk$individual)
# sdc@risk$global
# ### rankSwap
# sdc <- undolast(sdc)
# head(sdc@risk$individual)
# sdc@risk$global
# head(get.sdcMicroObj(sdc, type="manipNumVars"))
# sdc <- rankSwap(sdc)
# head(get.sdcMicroObj(sdc, type="manipNumVars"))
# head(sdc@risk$individual)
# sdc@risk$global
# ### suda2
# sdc <- suda2(sdc)
# sdc@risk$suda2
# ### topBotCoding
# head(get.sdcMicroObj(sdc, type="manipNumVars"))
# sdc@risk$numeric
# sdc <- topBotCoding(sdc, value=60000000, replacement=62000000, column="income")
# head(get.sdcMicroObj(sdc, type="manipNumVars"))
# sdc@risk$numeric
# ### LocalRecProg
# data(testdata2)
# sdc <- createSdcObj(testdata2,
# keyVars=c("urbrur", "roof", "walls", "water", "sex", "relat"))
# sdc@risk$global
# sdc <- LocalRecProg(sdc)
# sdc@risk$global
# ### LLmodGlobalRisk
# sdc <- undolast(sdc)
# sdc <- LLmodGlobalRisk(sdc, inclProb=0.001)
# sdc@risk$model
# ## End(Not run)
## we can also specify ghost (linked) variables
## these variables are linked to some categorical key variables
## and have the sampe suppression pattern as the variable that they
## are linked to after \code{\link{localSuppression}} has been applied
data(testdata)
testdata$electcon2 <- testdata$electcon
testdata$electcon3 <- testdata$electcon
testdata$water2 <- testdata$water
keyVars <- c("urbrur","roof","walls","water","electcon","relat","sex")
numVars <- c("expend","income","savings")
w <- "sampling_weight"
## we want to make sure that some variables not used as key-variables
## have the same suppression pattern as variables that have been
## selected as key variables. Thus, we are using 'ghost'-variables.
ghostVars <- list()
## we want variables 'electcon2' and 'electcon3' to be linked
## to key-variable 'electcon'
ghostVars[[1]] <- list()
ghostVars[[1]][[1]] <- "electcon"
ghostVars[[1]][[2]] <- c("electcon2","electcon3")
## we want variable 'water2' to be linked to key-variable 'water'
ghostVars[[2]] <- list()
ghostVars[[2]][[1]] <- "water"
ghostVars[[2]][[2]] <- "water2"
## create the sdcMicroObj
obj <- createSdcObj(testdata, keyVars=keyVars,
numVars=numVars, w=w, ghostVars=ghostVars)
## apply 3-anonymity to selected key variables
obj <- kAnon(obj, k=3); obj
## check, if the suppression patterns are identical
manipGhostVars <- get.sdcMicroObj(obj, "manipGhostVars")
manipKeyVars <- get.sdcMicroObj(obj, "manipKeyVars")
all(is.na(manipKeyVars$electcon) == is.na(manipGhostVars$electcon2))
all(is.na(manipKeyVars$electcon) == is.na(manipGhostVars$electcon3))
all(is.na(manipKeyVars$water) == is.na(manipGhostVars$water2))
Run the code above in your browser using DataLab