| inspect_data_categorical {inspector} | R Documentation |
Validate categorical data
Description
inspect_data_categorical checks if an object contains data
that is eligible to have been generated by a Multinomial distribution. This
can be useful to validate inputs in user-defined functions.
Usage
inspect_data_categorical(data, allow_nas = TRUE, warning_nas = FALSE)
Arguments
data |
An arbitrary object. |
allow_nas |
Logical value. If |
warning_nas |
Logical value. If |
Details
inspect_data_categorical conducts a series of tests to check if
data is eligible to have been generated by a Multinomial distribution.
Namely, inspect_data_categorical checks if:
-
dataisNULLor empty. -
datais atomic and have an eligible data type (logical, integer, double, character). -
datahasNAorNaNvalues.
Value
inspect_data_categorical does not return any output. There are
three possible outcomes:
The call is silent if:
-
datais eligible to have been generated by a Multinomial distribution and there are noNAorNaNvalues indata. -
datais eligible to have been generated by a Multinomial distribution, there are someNAorNaNvalues indataandwarning_nasis set toFALSE.
-
An informative warning message is thrown if:
datais eligible to have been generated by a Multinomial distribution, there are someNAorNaNvalues indataandwarning_nasis set toTRUE.An informative error message is thrown and the execution is stopped if:
-
datais not eligible to have been generated by a Multinomial distribution. -
datais eligible to have been generated by a Multinomial distribution, there are someNAorNaNvalues indataandallow_nasis set toTRUE.
-
See Also
-
inspect_data_cat_as_dichotomto validate categorical data as dichotomous. -
inspect_par_multinomialto validate vectors of Multinomial proportions. -
inspect_data_dichotomousto validate dichotomous data. -
inspect_par_bernoullito validate Bernoulli/Binomial proportions.
Examples
# Calls that pass silently:
x1 <- c(1, 0, 0, 1, 2)
x2 <- c(FALSE, FALSE, TRUE, NA)
x3 <- c("yes", "no", "yes", "maybe")
x4 <- factor(c("yes", "no", "yes", "maybe"))
x5 <- c(1, 0, 0, 1, 0, NA, 2)
inspect_data_categorical(x1)
inspect_data_categorical(x2)
inspect_data_categorical(x3)
inspect_data_categorical(x4)
inspect_data_categorical(x5)
inspect_data_categorical(x5)
# Call that throws an informative warning message:
y1 <- c(1, 1, NA, 0, 0, 2)
try(inspect_data_categorical(y1, warning_nas = TRUE))
# Calls that throw an informative error message:
z <- c(1, 1, NA, 0, 0, 2)
try(inspect_data_categorical(z, allow_nas = FALSE))
try(inspect_data_categorical(NULL))
try(inspect_data_categorical(list(1, 0)))
try(inspect_data_categorical(numeric(0)))
try(inspect_data_categorical(NaN))
try(inspect_data_categorical(NA))