R's duplicated
devuelve un vector que muestra si cada elemento de un vector o marco de datos es un duplicado de un elemento con un subíndice más pequeño. Entonces, si las filas 3, 4 y 5 de un marco de datos de 5 filas son iguales, duplicated
me darán el vector
FALSE, FALSE, FALSE, TRUE, TRUE
Pero en este caso realmente quiero obtener
FALSE, FALSE, TRUE, TRUE, TRUE
es decir, quiero saber si una fila también está duplicada por una fila con un subíndice más grande .
x <- c(1:9, 7:10, 5:22); y <- c(letters, letters[1:5]); test <- data.frame(x, y); test[duplicated(test$x) | duplicated(test$x, fromLast=TRUE), ]
devolví las tres copias de 7, 8 y 9. ¿Por qué funciona?