2012-05-26 34 views
36

Tengo un vector con elementos repetidos, y me gustaría eliminarlos de manera que cada elemento aparece sólo una vez.elementos Cómo quitar repetidas en un vector, similar a 'set' en Python

En Python podría construir un Set de un vector para lograr esto, pero ¿cómo puedo hacer esto en R?

+1

Puede dar algunos datos de ejemplo para ilustrar lo que quiere decir con "repetir". No todos los usuarios de R tendrán idea de lo que significa "solo 'alimentar' un vector a un conjunto" en python. Al repetir, ¿te refieres a repeticiones duplicadas o contiguas? Para el primero, vea '? Duplicated' –

Respuesta

58

Se puede extraer de unique función.

> v = c(1, 1, 5, 5, 2, 2, 6, 6, 1, 3) 
> unique(v) 
[1] 1 5 2 6 3 
9

Esto hace lo mismo. Más lento, pero útil si también quiere un vector lógico de los duplicados:

v[duplicated(v)] 
+2

, esto también tiene el potencial de conservar los nombres en un vector nombrado, mientras que' unique' simplemente los descarta. –

Cuestiones relacionadas