sdcMicroObj-class {sdcMicro} | R Documentation |
Class "sdcMicroObj"
Description
Class to save all information about the SDC process
Usage
createSdcObj(
dat,
keyVars,
numVars = NULL,
pramVars = NULL,
ghostVars = NULL,
weightVar = NULL,
hhId = NULL,
strataVar = NULL,
sensibleVar = NULL,
excludeVars = NULL,
options = NULL,
seed = NULL,
randomizeRecords = FALSE,
alpha = 1
)
undolast(object)
strataVar(object) <- value
## S4 replacement method for signature 'sdcMicroObj,characterOrNULL'
strataVar(object) <- value
Arguments
dat |
The microdata set. A numeric matrix or data frame containing the data. |
keyVars |
Indices or names of categorical key variables. They must, of course, match with the columns of ‘dat’. |
numVars |
Index or names of continuous key variables. |
pramVars |
Indices or names of categorical variables considered to be pramed. |
ghostVars |
if specified a list which each element being a list of exactly two elements.
The first element must be a character vector specifying exactly one variable name that was
also specified as a categorical key variable ( |
weightVar |
Indices or name determining the vector of sampling weights. |
hhId |
Index or name of the cluster ID (if available). |
strataVar |
Indices or names of stratification variables. |
sensibleVar |
Indices or names of sensible variables (for l-diversity) |
excludeVars |
which variables of |
options |
additional options (if specified, a list must be used as input) |
seed |
(numeric) number specifiying the seed which will be set to allow for
reproducablity. The number will be rounded and saved as element |
randomizeRecords |
(logical) if |
alpha |
numeric between 0 and 1 specifying the fraction on how much keys containing |
object |
a |
value |
|
Value
a sdcMicroObj-class
object
an object of class sdcMicroObj
with modified slot @strataVar
Objects from the Class
Objects can be created by calls of the form
new("sdcMicroObj", ...)
.
Author(s)
Bernhard Meindl, Alexander Kowarik, Matthias Templ, Elias Rut
References
Templ, M. and Meindl, B. and Kowarik, A.: Statistical Disclosure Control for Micro-Data Using the R Package sdcMicro, Journal of Statistical Software, 67 (4), 1–36, 2015. doi:10.18637/jss.v067.i04
Examples
## 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")
## donttest because Examples with CPU time > 2.5 times elapsed time
## 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))
## exclude some variables
obj <- createSdcObj(testdata, keyVars=c("urbrur","roof","walls"), numVars="savings",
weightVar=w, excludeVars=c("relat","electcon","hhcivil","ori_hid","expend"))
colnames(get.sdcMicroObj(obj, "origData"))