PrimaryFromSuppressedData {GaussSuppression} | R Documentation |
primary
and forced
from suppressed data
Description
Function for GaussSuppressionFromData
Usage
PrimaryFromSuppressedData(
x,
crossTable,
suppressedData,
forcedData = FALSE,
totCode = FindTotCode2(x, crossTable),
...
)
ForcedFromSuppressedData(..., forcedData = TRUE)
NotPrimaryFromSuppressedData(..., forcedData = TRUE)
Arguments
x |
A (sparse) dummy matrix |
crossTable |
crossTable generated by parent function |
suppressedData |
A data frame or a list of data frames as output from |
forcedData |
When |
totCode |
A named list of totals codes |
... |
Unused parameters |
Details
ForcedFromSuppressedData
uses forcedData = TRUE
and hence a vector to be use as forced is generated.
NotPrimaryFromSuppressedData
is similar, but TRUE
elements are replaced by NA
's.
Hence the result can be used as an extra primary vector to ensure that code combinations
not suppressed according to suppressedData
are forced not to be primary suppressed.
The variables used in suppressedData
in addition to "suppressed"
are those with matching names in crossTable
. Others are ignored.
For variables in crossTable
not in suppressedData
, only totals are considered.
Others rows are ignored when mathing with suppressedData
.
When suppressedData is a list, the final result is the union of individual results of each data frame.
Value
Logical vector to be used as GaussSuppression
input
Examples
z2 <- SSBtoolsData("z2")
# Data to be used as suppressedData
a <- GaussSuppressionFromData(z2, c(1, 3, 4), 5, protectZeros = FALSE)
# For alternative ways to suppress the same table
b1 <- GaussSuppressionFromData(z2, 1:4, 5)
b2 <- GaussSuppressionFromData(z2, 1:4, 5, primary = c(PrimaryDefault, PrimaryFromSuppressedData),
suppressedData = a)
b3 <- GaussSuppressionFromData(z2, 1:4, 5, primary = c(PrimaryDefault, PrimaryFromSuppressedData),
suppressedData = a, forced = ForcedFromSuppressedData)
b4 <- GaussSuppressionFromData(z2, 1:4, 5,
primary = c(PrimaryDefault, PrimaryFromSuppressedData, NotPrimaryFromSuppressedData),
suppressedData = a, forced = ForcedFromSuppressedData)
# Reducing data to rows mathing a
b1r <- b1[SSBtools::Match(a[1:2], b1[1:2]), ]
b2r <- b2[SSBtools::Match(a[1:2], b2[1:2]), ]
b3r <- b3[SSBtools::Match(a[1:2], b3[1:2]), ]
b4r <- b4[SSBtools::Match(a[1:2], b4[1:2]), ]
# Look at rows where new suppression is different from that in a
# Both TRUE and FALSE changed
cbind(a, b1r)[b1r$suppressed != a$suppressed, c(1:5, 9:10)]
# Only FALSE changed to TRUE (suppression is preserved)
cbind(a, b2r)[b2r$suppressed != a$suppressed, c(1:5, 9:10)]
# Only change is due to new primary suppression rule (protectZeros = TRUE)
cbind(a, b3r)[b3r$suppressed != a$suppressed, c(1:5, 9:10)]
# No changes
cbind(a, b4r)[b4r$suppressed != a$suppressed, c(1:5, 9:10)]