Learn R Programming

checkmate (version 1.6.1)

checkFactor: Check if an argument is a factor

Description

Check if an argument is a factor

Usage

checkFactor(x, levels = NULL, ordered = NA, empty.levels.ok = TRUE,
  any.missing = TRUE, all.missing = TRUE, len = NULL, min.len = NULL,
  max.len = NULL, n.levels = NULL, min.levels = NULL, max.levels = NULL,
  unique = FALSE, names = NULL)

assertFactor(x, levels = NULL, ordered = NA, empty.levels.ok = TRUE, any.missing = TRUE, all.missing = TRUE, len = NULL, min.len = NULL, max.len = NULL, n.levels = NULL, min.levels = NULL, max.levels = NULL, unique = FALSE, names = NULL, .var.name)

testFactor(x, levels = NULL, ordered = NA, empty.levels.ok = TRUE, any.missing = TRUE, all.missing = TRUE, len = NULL, min.len = NULL, max.len = NULL, n.levels = NULL, min.levels = NULL, max.levels = NULL, unique = FALSE, names = NULL)

expect_factor(x, levels = NULL, ordered = NA, empty.levels.ok = TRUE, any.missing = TRUE, all.missing = TRUE, len = NULL, min.len = NULL, max.len = NULL, n.levels = NULL, min.levels = NULL, max.levels = NULL, unique = FALSE, names = NULL, info = NULL, label = NULL)

Arguments

x
[any] Object to check.
levels
[character] Vector of allowed factor levels.
ordered
[logical(1)] Check for an ordered factor? If FALSE or TRUE, checks explicitly for an unordered or ordered factor, respectively. Default is NA which does not perform a check.
empty.levels.ok
[logical(1)] Are empty levels allowed? Default is TRUE.
any.missing
[logical(1)] Are vectors with missing values allowed? Default is TRUE.
all.missing
[logical(1)] Are vectors with only missing values allowed? Default is TRUE.
len
[integer(1)] Exact expected length of x.
min.len
[integer(1)] Minimal length of x.
max.len
[integer(1)] Maximal length of x.
n.levels
[integer(1)] Exact number of factor levels. Default is NULL (no check).
min.levels
[integer(1)] Minimum number of factor levels. Default is NULL (no check).
max.levels
[integer(1)] Maximum number of factor levels. Default is NULL (no check).
unique
[logical(1)] Must all values be unique? Default is FALSE.
names
[character(1)] Check for names. See checkNamed for possible values. Default is any which performs no check at all. Note that you can use
.var.name
[character(1)] Name for x. Defaults to a heuristic to determine the name using deparse and substitute.
info
[character(1)] Extra information to be included in the message for the testthat reporter. See expect_that.
label
[character(1)] Same as .var.name, but passed down to expect_that.

Value

  • Depending on the function prefix: If the check is successful, all functions return TRUE. If the check is not successful, assertFactor throws an error message, testFactor returns FALSE, checkFactor returns a string with the error message. The function expect_factor will return an expectation.

See Also

Other basetypes: assertArray, checkArray, expect_array, testArray; assertAtomicVector, checkAtomicVector, expect_atomic_vector, testAtomicVector; assertAtomic, checkAtomic, expect_atomic, testAtomic; assertCharacter, checkCharacter, expect_character, testCharacter; assertComplex, checkComplex, expect_complex, testComplex; assertDataFrame, checkDataFrame, expect_data_frame, testDataFrame; assertEnvironment, checkEnvironment, expect_environment, testEnvironment; assertFunction, checkFunction, expect_function, testFunction; assertIntegerish, checkIntegerish, expect_integerish, testIntegerish; assertInteger, checkInteger, expect_integer, testInteger; assertList, checkList, expect_list, testList; assertLogical, checkLogical, expect_logical, testLogical; assertMatrix, checkMatrix, expect_matrix, testMatrix; assertNumeric, checkNumeric, expect_numeric, testNumeric; assertVector, checkVector, expect_vector, testVector

Examples

Run this code
x = factor("a", levels = c("a", "b"))
testFactor(x)
testFactor(x, empty.levels.ok = FALSE)

Run the code above in your browser using DataLab