An integerish value is defined as value safely convertible to integer. This includes integers and numeric values which sufficiently close to an integer w.r.t. a numeric tolerance `tol`.
Usage
checkIntegerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
check_integerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
assertIntegerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE,
coerce = FALSE,
.var.name = vname(x),
add = NULL
)
assert_integerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE,
coerce = FALSE,
.var.name = vname(x),
add = NULL
)
testIntegerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
test_integerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE
)
expect_integerish(
x,
tol = sqrt(.Machine$double.eps),
lower = -Inf,
upper = Inf,
any.missing = TRUE,
all.missing = TRUE,
len = NULL,
min.len = NULL,
max.len = NULL,
unique = FALSE,
sorted = FALSE,
names = NULL,
typed.missing = FALSE,
null.ok = FALSE,
info = NULL,
label = vname(x)
)
Arguments
- x
[any]
Object to check.- tol
[
double(1)
]
Numerical tolerance used to check whether a double or complex can be converted. Default issqrt(.Machine$double.eps)
.- lower
[
numeric(1)
]
Lower value all elements ofx
must be greater than or equal to.- upper
[
numeric(1)
]
Upper value all elements ofx
must be lower than or equal to.- any.missing
[
logical(1)
]
Are vectors with missing values allowed? Default isTRUE
.- all.missing
[
logical(1)
]
Are vectors with no non-missing values allowed? Default isTRUE
. Note that empty vectors do not have non-missing values.- len
[
integer(1)
]
Exact expected length ofx
.- min.len
[
integer(1)
]
Minimal length ofx
.- max.len
[
integer(1)
]
Maximal length ofx
.- unique
[
logical(1)
]
Must all values be unique? Default isFALSE
.- sorted
[
logical(1)
]
Elements must be sorted in ascending order. Missing values are ignored.- names
[
character(1)
]
Check for names. SeecheckNamed
for possible values. Default is “any” which performs no check at all. Note that you can usecheckSubset
to check for a specific set of names.- typed.missing
[
logical(1)
]
If set toFALSE
(default), all types of missing values (NA
,NA_integer_
,NA_real_
,NA_character_
orNA_character_
) as well as empty vectors are allowed while type-checking atomic input. Set toTRUE
to enable strict type checking.- null.ok
[
logical(1)
]
If set toTRUE
,x
may also beNULL
. In this case only a type check ofx
is performed, all additional checks are disabled.- coerce
[
logical(1)
]
IfTRUE
, the inputx
is returned as integer after an successful assertion.- .var.name
[
character(1)
]
Name of the checked object to print in assertions. Defaults to the heuristic implemented invname
.- add
[
AssertCollection
]
Collection to store assertion messages. SeeAssertCollection
.- info
[
character(1)
]
Extra information to be included in the message for the testthat reporter. Seeexpect_that
.- label
[
character(1)
]
Name of the checked object to print in messages. Defaults to the heuristic implemented invname
.
Value
Depending on the function prefix:
If the check is successful, the functions
assertIntegerish
/assert_integerish
return
x
invisibly, whereas
checkIntegerish
/check_integerish
and
testIntegerish
/test_integerish
return
TRUE
.
If the check is not successful,
assertIntegerish
/assert_integerish
throws an error message,
testIntegerish
/test_integerish
returns FALSE
,
and checkIntegerish
/check_integerish
return a string with the error message.
The function expect_integerish
always returns an
expectation
.
Details
This function does not distinguish between
NA
, NA_integer_
, NA_real_
, NA_complex_
NA_character_
and NaN
.
Note
To convert from integerish to integer, use asInteger
.
See also
Other basetypes:
checkArray()
,
checkAtomic()
,
checkAtomicVector()
,
checkCharacter()
,
checkComplex()
,
checkDataFrame()
,
checkDate()
,
checkDouble()
,
checkEnvironment()
,
checkFactor()
,
checkFormula()
,
checkFunction()
,
checkInteger()
,
checkList()
,
checkLogical()
,
checkMatrix()
,
checkNull()
,
checkNumeric()
,
checkPOSIXct()
,
checkRaw()
,
checkVector()