# [R] unique vs duplicate problem

arun smartpink111 at yahoo.com
Tue Jul 10 04:03:31 CEST 2012

Hi Peter,

Thanks for testing it and notifying.  I didn't test it to other situtations.

Probably this should give similar results as Rui's
#Test 1:

x<-c(1,2,3,3,3,4,4,5)
func1<-function(x) !is.na(match(x,x[duplicated(x)]))
func1(x)
#[1] FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE FALSE

x[!func1(x)]
#[1] 1 2 5

#Rui's function fun<-function(x) x%in%x[duplicated(x)]
fun(x)
#[1] FALSE FALSE  TRUE  TRUE  TRUE  TRUE  TRUE FALSE
identical(func1(x),fun(x))
#[1] TRUE

#Test2:
x2<-c(1,2,-1,-1,2,3,4,-4,4,5,5,5,6,7)
x2[!func1(x2)]
#[1]  1  3 -4  6  7

identical(func1(x2),fun(x2))
#[1] TRUE

A.K.

----- Original Message -----
From: Peter Ehlers <ehlers at ucalgary.ca>
To: arun <smartpink111 at yahoo.com>
Cc: Nico902 <descostes at ciml.univ-mrs.fr>; R help <r-help at r-project.org>
Sent: Monday, July 9, 2012 4:14 PM
Subject: Re: [R] unique vs duplicate problem

On 2012-07-09 11:07, arun wrote:
> Hi,
> Try this:
> #Duplicated:
> x<-c(1:3,3)
> x==x[duplicated(x)]
> #[1] FALSE FALSE  TRUE  TRUE
> #Unique:
>   x[!x==x[duplicated(x)]]
> #[1] 1 2
>
>
> A.K.
>

Try the above approach with
x <- c(1,2,3,3,3,4,4,5)

I think Rui's solution is preferable.

Peter Ehlers

>
>
>
>
>
>
> ----- Original Message -----
> From: Nico902 <descostes at ciml.univ-mrs.fr>
> To: r-help at r-project.org
> Cc:
> Sent: Monday, July 9, 2012 12:42 PM
> Subject: [R] unique vs duplicate problem
>
> Hi,
>
> Let say I have a numeric vector:   x <- c(1, 2, 3, 3).
>
> I want on one hand numbers which are not duplicated ie "1,2" and duplicated
> "3".
>
> so I did:
>
>> duplicated(x)
> FALSE FALSE FALSE TRUE
>> unique(x)
> 1 2 3
>
> which is not what I want. Is there a function in R to have the following
> result:
>
>> duplicated(x)
> FALSE FALSE TRUE TRUE
>> unique(x)
> 1 2
>
> I could do it by programming some loops but I reckon somebody programmed a
>
> Cheers.
>
>
>
> --
> View this message in context: http://r.789695.n4.nabble.com/unique-vs-duplicate-problem-tp4635868.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help