The comparison operators >, <, >=, <=, ==, and != for hyperSpec
objects.
all.equal() checks the equality of two hyperSpec objects.
The comparison operators >, <, >=, <=, ==, and != work on the
spectra matrix of the hyperSpec object. They have their usual meaning
(see base::Comparison()).
The operators work also with one hyperSpec object and a numeric
(scalar) object or a matrices of the same size as the spectra matrix of the
hyperSpec object.
With numeric vectors sweep() might be more appropriate.
If you want to calculate on the data.frame hyperSpec@data,
you have to do this directly on hyperSpec@data.
# S4 method for hyperSpec,hyperSpec
Compare(e1, e2)
# S4 method for hyperSpec,numeric
Compare(e1, e2)
# S4 method for hyperSpec,matrix
Compare(e1, e2)
# S4 method for numeric,hyperSpec
Compare(e1, e2)
# S4 method for matrix,hyperSpec
Compare(e1, e2)
# S4 method for hyperSpec,hyperSpec
all.equal(
target,
current,
...,
check.attributes = FALSE,
check.names = FALSE,
check.column.order = FALSE,
check.label = FALSE,
tolerance = hy_get_option("tolerance"),
wl.tolerance = hy_get_option("wl.tolerance")
)Either two hyperSpec objects or one hyperSpec object and
matrix of same size as hyperSpec[[]] or a scalar
(numeric of length 1).
As hyperSpec objects must have numeric spectra matrices, the
resulting matrix of the comparison is returned directly.
two hyperSpec objects that are tested for
equality.
handed to base::all.equal() when testing the slots of the
hyperSpec objects
If two objects have the same data, but the order of the columns (determined by the names) differs, should they be regarded as different?
Should the slot label be checked?
If the labels differ only in the order of their entries, they are
considered equal.
tolerances for checking wavelengths and data, respectively
A logical matrix for the comparison operators.
all.equal returns either TRUE, or a character vector describing
the differences. In conditions, the result must therefore be tested
with base::isTRUE().
sweep-methods() for calculations involving a vector and
the spectral matrix.
methods::S4groupGeneric() for group generic methods.
base::Comparison() for the base comparison functions.
Arith() for arithmetic operators,
Math() for mathematical group generic functions
(groups Math and Math2) working on hyperSpec objects.
flu[, , 445 ~ 450] > 300
#> 445 445.5 446 446.5 447 447.5 448 448.5 449 449.5 450
#> [1,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
#> [2,] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
#> [3,] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
all(flu == flu[[]])
#> [1] TRUE