Description Usage Arguments Value Note See Also Examples
Determine which record violates which edits. Returns NA
when edits
cannot be checked because of missing values in the data.
For rules of the form Ax == b |Ax - b| <= tol is returned.
For rules of the form Ax < b, Ax - b < tol is returned.
For rules of the form Ax <= b Ax- b <= tol is returned.
For numerical records, the default tolerance is 0. When working with doubles,
the square root of machina accuracy is a resonable alternative (sqrt(.Machine\$double.eps)
).
The editmatrix is normalized before checks are performed.
Plot summary statistics on violatedEdits
as.data.frame violatedEdits
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | violatedEdits(E, dat, ...)
## S3 method for class 'character'
violatedEdits(E, dat, name = NULL, ...)
## S3 method for class 'editmatrix'
violatedEdits(E, dat, tol = 0, ...)
## S3 method for class 'editarray'
violatedEdits(E, dat, datamodel = TRUE, ...)
## S3 method for class 'editset'
violatedEdits(E, dat, datamodel = TRUE, ...)
## S3 method for class 'violatedEdits'
plot(x, topn = min(10, ncol(x)), ...)
## S3 method for class 'violatedEdits'
summary(object, E = NULL, minfreq = 1, ...)
## S3 method for class 'violatedEdits'
as.data.frame(x, ...)
|
E |
|
dat |
|
... |
further arguments that can be used by methods implementing this generic function |
name |
name of edits |
tol |
tolerance to check rules against. |
datamodel |
Also check against datamodel? |
x |
|
topn |
Top |
object |
|
minfreq |
minimum freq for edit to be printed |
An object of class violatedEdits
, which is a logical nrow(dat)Xnedits(E)
matrix with an extra class
attribute
for overloading purposes.
When summarizing an object of class violatedEdits
, every
empty value is counted as one edit violation when counting violations per record.
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 | # Using character vector to define contraints
E <- editmatrix(c( "x+3*y==2*z"
, "x==z"
)
)
dat <- data.frame( x = c(0,2,1)
, y = c(0,0,1)
, z = c(0,1,1)
)
print(dat)
ve <- violatedEdits(E,dat)
print(ve)
summary(ve, E)
plot(ve)
# An example with categorical data:
E <- editarray(expression(
gender %in% c('male','female'),
pregnant %in% c(TRUE, FALSE),
if( gender == 'male' ) !pregnant
)
)
print(E)
dat <- data.frame(
gender=c('male','male','female','cylon'),
pregnant=c(TRUE,FALSE,TRUE,TRUE)
)
print(dat)
# Standard, the datamodel is checked as well,
violatedEdits(E,dat)
# but we may turn this of
violatedEdits(E,dat,datamodel=FALSE)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.