all_identical {statnet.common} | R Documentation |
Test if all items in a vector or a list are identical.
Description
Test if all items in a vector or a list are identical.
Usage
all_identical(x, .p = identical, .ref = 1L, ...)
Arguments
x |
a vector or a list |
.p |
a predicate function of two arguments returning a logical.
Defaults to |
.ref |
integer; index of element of |
... |
additional arguments passed to |
Value
By default TRUE
if all elements of x
are identical to each
other, FALSE
otherwise. In the general case, all_identical()
returns TRUE
if and only if .p()
returns TRUE
for all the pairs
involving the first element and the remaining elements.
See Also
Examples
stopifnot(!all_identical(1:3))
stopifnot(all_identical(list("a", "a", "a")))
# Using with `all.equal()` has its quirks
# because of numerical tolerance:
x <- seq(
.Machine$double.eps,
.Machine$double.eps + 1.1 * sqrt(.Machine$double.eps),
length = 3
)
# Results with `all.equal()` are affected by ordering
all_identical(x, all.equal) # FALSE
all_identical(x[c(2,3,1)], all.equal) # TRUE
# ... because `all.equal()` is intransitive
all_identical(x[-3], all.equal) # is TRUE and
all_identical(x[-1], all.equal) # is TRUE, but
all_identical(x[-2], all.equal) # is FALSE
[Package statnet.common version 4.12.0 Index]