Tipos de Datos en NumPy
Vamos a ver como son los tipos de datos disponibles en NumPy , cómo comprobar y definir tipos de datos para matrices, cómo manejar valores que no se pueden convertir y cómo realizar conversiones de tipos de datos en matrices existentes.
Tipos de Datos en Python
Antes de sumergirnos en NumPy, es importante entender los tipos de datos en Python, ya que NumPy se basa en ellos. Algunos de los tipos de datos más comunes en Python incluyen:
-
int: Números enteros, como5o-3. -
float: Números de punto flotante, como3.14o-0.5. -
str: Cadenas de texto, como"Hola, mundo!". -
bool: Valores booleanos,TrueoFalse. -
list: Listas, colecciones ordenadas de elementos. -
tuple: Tuplas, colecciones ordenadas e inmutables de elementos. -
dict: Diccionarios, colecciones de pares clave-valor.
Tipos de Datos en NumPy
NumPy introduce tipos de datos adicionales que son especialmente útiles para la computación numérica. Algunos de los tipos de datos comunes en NumPy incluyen:
-
int32,int64: Enteros de 32 y 64 bits. -
float32,float64: Números de punto flotante de 32 y 64 bits. -
complex64,complex128: Números complejos de 64 y 128 bits. -
bool: Booleanos (representados comoTrueyFalse). -
object: Tipo de datos genérico que permite almacenar cualquier objeto de Python. -
string_: Tipo de datos para cadenas de longitud fija. -
unicode_: Tipo de datos para cadenas Unicode de longitud fija.
Comprobar el Tipo de Datos de una Matriz
Es importante verificar el tipo de datos de una matriz en NumPy, ya que afecta la precisión y el rendimiento de las operaciones. Puedes comprobar el tipo de datos de una matriz NumPy utilizando el atributo
dtype
.
Ejemplo
import numpy as np
matriz = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
import numpy as np
# Crear una matriz de enteros
arr = np.array([1, 2, 3, 4, 5])
# Comprobar el tipo de datos
print(arr.dtype)
Crear Matrices con un Tipo de Datos Definido
Puedes especificar el tipo de datos al crear una matriz en NumPy utilizando el argumento
dtype
en las funciones de creación de matrices, como
np.array()
.
Ejemplo
import numpy as np
# Crear una matriz de enteros de 32 bits
arr_int32 = np.array([1, 2, 3, 4, 5], dtype=np.int32)
# Crear una matriz de números de punto flotante de 64 bits
arr_float64 = np.array([3.14, 2.5, 1.0], dtype=np.float64)
print(arr_float64)
¿Qué Pasa si un Valor no se Puede Convertir?
Si intentas asignar un valor que no se puede convertir al tipo de datos especificado, NumPy generará un error o truncará el valor.
Ejemplo
arr_float = np.array([1, 2, 3], dtype=np.float64)
# Resultado: [1. 2. 3.]
print(arr_float)
print(arr_float)
Conversión de Tipos de Datos en Matrices Existentes
Puedes cambiar el tipo de datos de una matriz existente utilizando el método
astype()
.
Ejemplo
import numpy as np
# Crear una matriz de enteros
arr = np.array([1, 2, 3, 4, 5])
# Convertir la matriz a números de punto flotante de 32 bits
arr_float32 = arr.astype(np.float32)
print(arr_float32)
print(arr_float32)
NumPy proporciona una amplia variedad de tipos de datos para adaptarse a tus necesidades de computación numérica. Recuerda siempre verificar y especificar el tipo de datos adecuado al trabajar con matrices para evitar errores y optimizar el rendimiento.
Practica Tipos de Datos en NumPy en el editor
Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.
Ejercicio: Crear una matriz de enteros
Es importante verificar el tipo de datos de una matriz en NumPy, ya que afecta la precisión y el rendimiento de las operaciones. Puedes comprobar el tipo de datos de una matriz Num.
Ejemplo
import numpy as np
matriz = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
import numpy as np
# Crear una matriz de enteros
arr = np.array([1, 2, 3, 4, 5])
# Comprobar el tipo de datos
print(arr.dtype)
Ejercicio: Crear una matriz de enteros de 32 bits
Puedes especificar el tipo de datos al crear una matriz en NumPy utilizando el argumento dtype en las funciones de creación de matrices, como np.a.
Ejemplo
import numpy as np
# Crear una matriz de enteros de 32 bits
arr_int32 = np.array([1, 2, 3, 4, 5], dtype=np.int32)
# Crear una matriz de números de punto flotante de 64 bits
arr_float64 = np.array([3.14, 2.5, 1.0], dtype=np.float64)
print(arr_float64)
Ejercicio: Crear un array NumPy
Si intentas asignar un valor que no se puede convertir al tipo de datos especificado, NumPy generará un error o truncará el valor.
Ejemplo
import numpy as np
# Crear una matriz de enteros
arr = np.array([1, 2, 3, 4, 5])
# Convertir la matriz a números de punto flotante de 32 bits
arr_float32 = arr.astype(np.float32)
print(arr_float32)
Ejercicio: Obtener el tipo con type()
Puedes cambiar el tipo de datos de una matriz existente utilizando el método astype().
Ejemplo
arr_float = np.array([1, 2, 3], dtype=np.float64)
# Resultado: [1. 2. 3.]
print(arr_float)
Comprueba lo aprendido
Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.