-
Notifications
You must be signed in to change notification settings - Fork 22
/
0classes.r
135 lines (133 loc) · 3.97 KB
/
0classes.r
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
### class sdcMicroObj ###
#' @useDynLib sdcMicro, .registration=TRUE
#' @import methods
#' @import Rcpp
#' @import robustbase
#' @import MASS
#' @import carData
#' @import cluster
#' @import tools
#' @import knitr
#' @import xtable
#' @import data.table
#' @import ggplot2
#' @import shinyBS
#' @import shiny
#' @import rhandsontable
#' @importFrom DT datatable
#' @importFrom prettydoc html_pretty
#' @importFrom rmarkdown pandoc_available
#' @importFrom rmarkdown render
#' @importFrom graphics axis
#' @importFrom graphics box
#' @importFrom graphics boxplot
#' @importFrom graphics legend
#' @importFrom graphics lines
#' @importFrom graphics mtext
#' @importFrom graphics par
#' @importFrom graphics plot.new
#' @importFrom graphics plot.window
#' @importFrom graphics rect
#' @importFrom graphics segments
#' @importFrom graphics strwidth
#' @importFrom graphics text
#' @importFrom stats as.formula
#' @importFrom stats coef
#' @importFrom stats cor
#' @importFrom stats cov
#' @importFrom stats formula
#' @importFrom stats glm
#' @importFrom stats lm
#' @importFrom stats mad
#' @importFrom stats median
#' @importFrom stats na.omit
#' @importFrom stats sd
#' @importFrom stats terms
#' @importFrom stats var
#' @importFrom stats runif
#' @importFrom utils data
setClassUnion("dataframeOrNULL", c("data.frame", "NULL"))
setClassUnion("numericOrNULL", c("numeric", "NULL"))
setClassUnion("characterOrNULL", c("character", "NULL"))
setClassUnion("logicalOrNULL", c("logical", "NULL"))
setClassUnion("matrixOrNULL", c("matrix", "NULL"))
setClassUnion("listOrNULL", c("list", "NULL"))
setClassUnion("factorOrNULL", c("factor", "NULL"))
setClassUnion("sdcmicroOrNULL", c("NULL"))
#' Class \code{"sdcMicroObj"}
#'
#' Class to save all information about the SDC process
#'
#' @name sdcMicroObj-class
#' @aliases sdcMicroObj-class
#' createSdcObj
#' @docType class
#' @section Objects from the Class: Objects can be created by calls of the form
#' \code{new("sdcMicroObj", ...)}.
#' @author Bernhard Meindl, Alexander Kowarik, Matthias Templ, Elias Rut
#' @keywords classes
#' @export
setClass(Class = "sdcMicroObj",
representation = representation(
origData = "dataframeOrNULL",
keyVars = "numericOrNULL",
pramVars = "numericOrNULL",
numVars = "numericOrNULL",
ghostVars = "listOrNULL",
weightVar = "numericOrNULL",
hhId = "numericOrNULL",
strataVar = "numericOrNULL",
sensibleVar = "numericOrNULL",
manipKeyVars = "dataframeOrNULL",
manipPramVars = "dataframeOrNULL",
manipNumVars = "dataframeOrNULL",
manipGhostVars = "dataframeOrNULL",
manipStrataVar = "factorOrNULL",
originalRisk = "listOrNULL",
risk = "listOrNULL",
utility = "listOrNULL",
pram = "listOrNULL",
localSuppression = "listOrNULL",
options = "listOrNULL",
additionalResults = "listOrNULL",
set = "listOrNULL",
prev = "sdcmicroOrNULL",
deletedVars = "characterOrNULL"),
prototype = prototype(
origData = NULL,
keyVars = NULL,
pramVars = NULL,
numVars = NULL,
ghostVars = NULL,
weightVar = NULL,
hhId = NULL,
strataVar = NULL,
sensibleVar = NULL,
manipKeyVars = NULL,
manipPramVars = NULL,
manipNumVars = NULL,
manipGhostVars = NULL,
manipStrataVar = NULL,
originalRisk = NULL,
risk = NULL,
utility = NULL,
pram = NULL,
localSuppression = NULL,
options = NULL,
additionalResults = NULL,
set = NULL,
prev = NULL,
deletedVars = NULL),
validity = function(object) {
if (!is.null(object@manipKeyVars) && ncol(object@manipKeyVars) != length(object@keyVars)) {
stop("wrong dimension of slot 'manipKeyVars'!\n")
}
if (!is.null(object@manipNumVars) && ncol(object@manipNumVars) != length(object@numVars)) {
stop("wrong dimension of slot 'manipNumVars'!\n")
}
if (!is.null(object@strataVar) && object@strataVar %in% object@keyVars) {
stop("stratification variable cant be a categorical key variable!\n")
}
return(TRUE)
})
setIs("sdcMicroObj", "sdcmicroOrNULL")