En esta ocasión vamos a ver los pasos para realizar una operación que posiblemente debamos realizar de forma habitual: convertir un objeto de NumPy en una lista de Python. Pudiendo exportar así los datos para usar en funciones que no pueden trabajar directamente con objetos de NumPy. Siendo el complemento a la creación de arrays en base a listas o tuplas. La conversión se realizará habitualmente mediante el método tolist() presente en los objetos de NumPy.
En todos los matrices y vectores de NumPy existe el método tolist() que devuelve el contenido del objeto en una lista de Python. Un método que no tiene opciones, por lo que es bastante fácil de usar. Así, para conseguir la lista equivalente a un vector de NumPy solamente es necesario realizar el siguiente proceso.
import numpy as np arr = np.array([1, 2, 3]) arr.tolist()
[1, 2, 3]
Con el que se obtiene la lista deseada.
El método tolist() también se puede utilizar cuando el objeto contiene una matriz. A diferencia del caso anterior el resultado no es una lista de número, sino que una lista de listas. Al igual que en el caso anterior solamente se tiene que llamar al método para obtener el resultado.
mat = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8 ,9]])
mat.tolist() [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Cuando el contenido del objeto NumPy es una matriz puede que no queramos obtener una lista de listas, sino que una lista con los valores. Para solucionar este problema se puede utilizar el método flatten() mediante el cual se puede transforma una objeto NumPy 2D en uno 1D, es decir, transformar una matriz en un vector. Una vez obtenido el vector, solamente se tendría que llamar al método tolist() para obtener la lista deseada. Operación que se puede concatenar en una línea.
mat.flatten().tolist()
[1, 2, 3, 4, 5, 6, 7, 8, 9]
En esta ocasión hemos visto como se puede usar el método tolist() para transformar un objeto de NumPy en una lista de Python. Operación que posiblemente debamos realizar de forma habitual al trabajar con NumPy.
Los dos artículos anteriores cubrieron el CLV clásico —una fórmula útil pero que trata a…
Hay un momento muy concreto en la vida de casi todo análisis: el código que…
Has construido un nuevo modelo de credit scoring. Las métricas de validación son mejores que…
Comparar dos hipotecas parece sencillo: la que tenga el TIN más bajo es la mejor…
En un artículo anterior vimos la fórmula clásica del CLV junto a sus limitaciones. Una…
Y llegamos al final de una serie que había programado para ser de tres entradas.…
This website uses cookies.