Encontrando duplicatas em uma lista, incluindo permutações
Gostaria de determinar se uma lista contém elementos duplicados, considerando as permutações como equivalentes. Todos os vetores são de igual comprimento.
Qual é a maneira mais eficiente (menor tempo de execução) para conseguir isso?
## SAMPLE DATA
a <- c(1, 2, 3)
b <- c(4, 5, 6)
a.same <- c(3, 1, 2)
## BOTH OF THSE LISTS SHOULD BE FLAGGED AS HAVING DUPLICATES
myList1 <- list(a, b, a)
myList2 <- list(a, b, a.same)
# CHECK FOR DUPLICATES
anyDuplicated(myList1) > 0 # TRUE
anyDuplicated(myList2) > 0 # FALSE, but would like true.
Por enquanto, estou recorrendo à classificação de cada membro da lista antes de verificar se há duplicatas
anyDuplicated( lapply(myList2, sort) ) > 0
Eu estou querendo saber se existe uma alternativa mais eficiente. Além disso, no?duplicated
documentação, indica "Usar isto para listas é potencialmente lento". Existem outras funções mais adequadas para listas?