Antes de redescubrir la rueda: ¿hay una función en R que recibe una lista x
y devuelve una lista y
tal que y[[i]] = intersect(x[[1]][[i]], x[[2]][[i]], ...)
? Si no, ¿hay una forma R-adic de codificarlo en un par de líneas?Intersección de listas en R
9
A
Respuesta
9
¿Funciona?
x <- list(list(1:3,2:4),list(2:3,4:5),list(3:7,4:5))
maxlen <- max(sapply(x,length))
lapply(seq(maxlen),function(i) Reduce(intersect,lapply(x,"[[",i)))
(intersect
sólo toma dos argumentos por lo que tiene que utilizar Reduce
como un paso adicional)
PS No he probado esto en todos los casos difíciles - por ejemplo, listas de longitud desigual.
2
Parece que la Reduce
puede usarse simplemente como sigue:
> Reduce(intersect, list(v1 = c("a","b","c","d"),
+ v2 = c("a","b","e"),
+ v3 = c("a","f","g")))
[1] "a"
Cuestiones relacionadas
- 1. R intersección de listas
- 2. Python -Intersección de listas múltiples
- 3. Intersección de dos listas en Bash
- 4. Intersección de dos conjuntos (Listas) de datos
- 5. intersección entre dos listas no trabaja
- 6. intersección de dos listas de objetos diferentes en java
- 7. tomando la intersección de N-many listas en python
- 8. R. cómo hacer una lista de listas en R?
- 9. intersección de lista en Java
- 10. Python: intersección de listas anidadas donde importa el orden
- 11. Diferencias entre hash y listas en R
- 12. Finding Intersección de NSMutableArrays
- 13. Multiplicando Combinaciones de una lista de listas en R
- 14. ¿Cómo visualizar una lista de listas de listas de ... en R?
- 15. Accediendo a los mismos elementos de listas con nombre de la lista de listas en R
- 16. Python - Intersección de cadenas
- 17. Algoritmo de intersección de bordes?
- 18. Desempaquetar listas de argumentos para elipsis en R
- 19. sabiendo eficientemente si la intersección de dos listas está vacía o no, en python
- 20. intersección Timespan en C#
- 21. Intersección de ruta en android
- 22. Intersección de matriz en bash
- 23. Listas de listas de listas
- 24. Intersección CGPathRef
- 25. Intersección complejidad
- 26. intersecar dos listas de palabras en python
- 27. intersección de polígono rectilíneo
- 28. Intersección dentro de Object3D
- 29. Intervalo establece el álgebra en R (unión, intersección, diferencia, la inclusión, ...)
- 30. ¿cómo obtengo la diferencia entre dos listas con nombre R?
Esto es bastante agradable y en el espíritu R. – gappy