Some numeric checks {DescTools} | R Documentation |
Test if x contains only integer numbers, or if is numeric or if it is zero.
IsWhole(x, all = FALSE, tol = sqrt(.Machine$double.eps), na.rm = FALSE)
IsZero(x, tol = sqrt(.Machine$double.eps), na.rm = FALSE)
IsNumeric(x, length.arg = Inf, integer.valued = FALSE, positive = FALSE, na.rm = FALSE)
x |
a (non-empty) numeric vector of data values. |
all |
logical, specifying if the whole vector should be checked. If set to |
tol |
tolerance to be used |
length.arg |
integer, the length of the vector to be checked for. |
integer.valued |
logical, should x be checked as integer? |
positive |
logical, is x supposed to be positive? |
na.rm |
logical, indicating whether |
IsWhole is the suggested solution for checking for an integer value, as is.integer
tests for class(x) == "integer"
and does NOT test whether x (which might be of class "numeric") contains only integer numbers.
(Why not simply implement it in base?)
IsZero tests float numeric values for being zero.
IsNumeric combines a test for numeric and integers.
logical vector of the same dimension as x.
R-Core, Andri Signorell <andri@signorell.net>, Thomas W. Yee
(x <- seq(1,5, by=0.5))
IsWhole( x ) #--> \code{TRUE} \code{FALSE} \code{TRUE} ...
# ... These are people who live in ignorance of the Floating Point Gods.
# These pagans expect ... (Burns, 2011)" the following to be TRUE:
(.1 - .3 / 3) == 0
# they might be helped by
IsZero(.1 - .3 / 3)