[R] Testing if all elements are equal in a vector/matrix

Patrick Burns
Mon, 29 Aug 2005 21:22:14 -0000

How about

diff(range(x)) < tolerance

Patrick Burns
patrick at burns-stat.com
+44 (0)20 8525 0696
http://www.burns-stat.com
(home of S Poetry and "A Guide for the Unwilling S User")

Vincent Goulet wrote:

>Is there a canonical way to check if all elements of a vector or matrix are
>the same? Solutions below work, but look hackish to me.
>
>
>
>>x <- rep(1, 10)
>>all(x == x[1])  # == operator does not provide for small differences
>>
>>
>[1] TRUE
>
>
>>isTRUE(all.equal(x, rep(x[1], length(x)))) # ugly