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

From: Vincent Goulet <vincent.goulet_at_act.ulaval.ca>
Date: Tue 30 Aug 2005 - 13:18:01 EST

I like this one! It however has the same drawback as

any(x == x[1])

Patrick Burn's suggestion is also quite nice and original and allows for some fuzzyness, like all.equal() does.

I will conclude from this thread that there is no canonical way to do the test I want, but many different approaches (something frequent in R). Thanks all for the suggestions!

Le 29 Août 2005 17:45, vous avez écrit :
> or perhaps
>
> length(unique(x))==1
>
>
>
> -----Original Message-----
> From: r-help-bounces@stat.math.ethz.ch
> [mailto:r-help-bounces@stat.math.ethz.ch] On Behalf Of Patrick Burns
> Sent: Monday, August 29, 2005 5:22 PM
> To: vincent.goulet@act.ulaval.ca
> Cc: r-help@stat.math.ethz.ch
> Subject: Re: [R] Testing if all elements are equal in a vector/matrix
>
>
> diff(range(x)) < tolerance
>
> Patrick Burns
> patrick@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
> >
> >[1] TRUE
> >
> >Best,
> >
> >Vincent
>
> ______________________________________________
> R-help@stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> http://www.R-project.org/posting-guide.html

```--
Vincent Goulet, Professeur agrégé
École d'actuariat
Université Laval, Québec
Vincent.Goulet_at_act.ulaval.ca   http://vgoulet.act.ulaval.ca

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help