Python

NumPy: Convertir un objeto de NumPy en una lista de Python

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.

Convertir un vector de NumPy en una lista

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.

Convertir un vector de NumPy en una lista de listas

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]]

Convertir un vector de NumPy en una lista

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]

Conclusiones

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.

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez
Tags: NumPy

Recent Posts

BG/NBD + Gamma/Gamma: el modelo probabilístico para CLV en compras continuas

Los dos artículos anteriores cubrieron el CLV clásico —una fórmula útil pero que trata a…

15 horas ago

Errores habituales al trabajar con DataFrames grandes en Pandas (y cómo evitarlos)

Hay un momento muy concreto en la vida de casi todo análisis: el código que…

6 días ago

Champion vs Challenger: Cómo los Bancos Validan Modelos Nuevos antes de Ponerlos en Producción

Has construido un nuevo modelo de credit scoring. Las métricas de validación son mejores que…

1 semana ago

Cómo Comparar Dos Hipotecas con Todos los Gastos Incluidos

Comparar dos hipotecas parece sencillo: la que tenga el TIN más bajo es la mejor…

2 semanas ago

Segmentación RFM: cómo clasificar tu cartera de clientes antes de calcular el CLV

En un artículo anterior vimos la fórmula clásica del CLV junto a sus limitaciones. Una…

2 semanas ago

Los récords con asterisco, o la épica del titular sin contexto – El bestiario de los indicadores económicos absurdos (parte 8 y final)

Y llegamos al final de una serie que había programado para ser de tres entradas.…

3 semanas ago

This website uses cookies.