¿Cuál es una buena representación de matrices en Clojure? Estoy interesado en lidiar con matrices densas de números de coma flotante. La representación de la "lista de listas" me viene a la mente, pero ¿hay algo mejor?Clojure Matrix Representation
Algunos criterios para una buena representación incluyen:
- Eficiencia: No van a ser utilizados para el procesamiento constante de grandes conjuntos de datos, pero no quieren pasar horas cálculo de los resultados que se podrían haber hecho en minutos con un mejor diseño.
- Interoperabilidad de Java: Sería bueno pasar la información de ida y vuelta entre los dos idiomas fácilmente.
- Paralelización fácil: si puedo usar todos los núcleos disponibles simplemente reemplazando
map
conpmap
, sería agradable. - Respecto al uso de
reduce
: Parece que muchos de los cálculos que estoy haciendo funcionan muy bien conreduce
. - Posibilidad de representar líneas de escaneo de imágenes en filas de matrices: No es realmente muy importante, pero sería bueno tenerlas.
¿Alguna idea?
¿Qué tipo de operaciones qué quiere hacer con estas matrices? Representarlos como una lista de listas será una elección decente para algunas operaciones, pero te matará si necesitas acceder a los elementos arbitraray de la matriz con frecuencia. – Pillsy