Muchas veces las usamos indistintamente pero existen diferencias entre flatten() y ravel(), en Python
Cuando necesitamos convertir un ndarray
en un array de una sola dimensión, podemos valernos de algunas de estas dos funciones de numpy
, la biblioteca para operar funciones numéricas que Python
posee.
Las diferencias entre ambas funciones no son muchas, pero existen. Veamos
flatten()
Solo nos retornará una copia del array original, por lo que si modificamos su composición en el transcurso de nuestro código, nos seguirá devolviendo el array inicial
Por otro lado en comparación con ravel()
, es más lento y ocupa mayor cantidad de memoria.
flatten()
además, es un método propio del objeto ndarray
ravel()
Su resultado es una vista o referencia del array que esta aplanando o convirtiendo, pero si este cambia, al ser una referencia, el también se ve afectado y actualiza su contenido.
Es mucho más rápido y no ocupa memoria.
ravel()
actúa como una función, pero esta diseñado como una librería
Espero modestamente que este artículo, sirva de ayuda a alguien.
Gracias
JMarti
“Todo como el diamante, antes que luz es carbon”