Atributos de array y Dtype

NumPyBeginner
Practicar Ahora

Introducción

Este tutorial explorará los atributos de los arrays de NumPy, centrándose en el atributo dtype. NumPy es una poderosa biblioteca para el cálculo numérico en Python, y el array de NumPy es una estructura de datos central para esta biblioteca.

Los arrays de NumPy son arrays multidimensionales y homogéneos, lo que significa que pueden almacenar elementos del mismo tipo de datos en múltiples dimensiones. Son eficientes y convenientes para las operaciones numéricas, proporcionando muchas funciones y capacidades.

Este es un Guided Lab, que proporciona instrucciones paso a paso para ayudarte a aprender y practicar. Sigue las instrucciones cuidadosamente para completar cada paso y obtener experiencia práctica. Los datos históricos muestran que este es un laboratorio de nivel intermedio con una tasa de finalización del 80%. Ha recibido una tasa de reseñas positivas del 99% por parte de los estudiantes.

Creando arrays de NumPy

Antes de explorar los atributos de los arrays de NumPy, primero creemos un array de NumPy. Puedes crear arrays de NumPy a partir de listas, tuplas u otros arrays utilizando la función numpy.array().

Abrir la shell de Python

Abre la shell de Python escribiendo el siguiente comando en la terminal.

python3

Ahora puedes utilizar la función numpy.array() para crear arrays de NumPy

import numpy as np

## Creando un array unidimensional a partir de una lista
one_d_array = np.array([1, 2, 3, 4, 5])

## Creando un array bidimensional a partir de una lista de listas
two_d_array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

Atributos de los arrays de NumPy

Los arrays de NumPy tienen varios atributos que proporcionan información sobre las propiedades del array, como:

  • shape: Una tupla que representa las dimensiones del array.
  • size: El número total de elementos en el array.
  • ndim: Las dimensiones (ejes) del array.
  • dtype: El tipo de datos de los elementos del array.
  • itemsize: El tamaño en bytes de cada elemento en el array.

Utilización de los atributos de los arrays

Ahora, podemos utilizar estos atributos en la práctica:

## Crea un array bidimensional
array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

## Obtiene la forma del array
print("Forma:", array.shape)  ## Salida: (3, 3)

## Obtiene el tamaño del array
print("Tamaño:", array.size)  ## Salida: 9

## Obtiene el número de dimensiones del array
print("Número de dimensiones:", array.ndim)  ## Salida: 2

## Obtiene el tipo de datos de los elementos del array
print("Tipo de datos:", array.dtype)  ## Salida: int64 (o int32, según tu sistema)

## Obtiene el tamaño en bytes de cada elemento en el array
print("Tamaño de elemento:", array.itemsize)  ## Salida: 8 (o 4, según tu sistema)

Comprendiendo el Dtype

El atributo dtype es particularmente importante porque determina el tipo de datos almacenados en el array. NumPy admite varios tipos de datos, como enteros (int8, int16, int32, int64), enteros sin signo (uint8, uint16, uint32, uint64), números de punto flotante (float16, float32, float64) y números complejos (complex64, complex128).

Al crear un array de NumPy, puedes especificar el dtype utilizando el parámetro dtype. Si no se especifica, NumPy intentará inferir el tipo de datos a partir de los datos de entrada.

Uso de dtype

Exploremos el uso del atributo dtype

## Crea un array de punto flotante a partir de una lista
float_array = np.array([1.2, 2.3, 3.4, 4.5], dtype=np.float32)
print("Tipo de datos del array de punto flotante:", float_array.dtype)  ## Salida: float32

## Crea un array de enteros a partir de una lista
int_array = np.array([1, 2, 3, 4, 5], dtype=np.int16)
print("Tipo de datos del array de enteros:", int_array.dtype)  ## Salida: int16

## Crea un array complejo a partir de una lista
complex_array = np.array([1 + 2j, 2 + 3j, 3 + 4j], dtype=np.complex64)
print("Tipo de datos del array complejo:", complex_array.dtype)  ## Salida: complex64

## Crea un array y deja que NumPy infiera el tipo de datos
mixed_array = np.array([1, 2, 3.5, 4.5])
print("Tipo de datos del array mixto:", mixed_array.dtype)  ## Salida: float64

## Cambiar el tipo de datos de un array existente
new_dtype_array = mixed_array.astype(np.int32)
print("Nuevo array con tipo de datos:", new_dtype_array)  ## Salida: [1 2 3 4]
print("Nuevo tipo de datos:", new_dtype_array.dtype)  ## Salida: int32

## Crear un array de ceros con un tipo de datos especificado
zeros_array = np.zeros((3, 3), dtype=np.uint8)
print("Array de ceros con tipo de datos uint8:\n", zeros_array) ## Salida:[[0 0 0] [0 0 0] [0 0 0]]

Resumen

En resumen, este tutorial se centró en los atributos de los arrays de NumPy, particularmente en el atributo dtype. Cubrimos la creación de arrays de NumPy, exploramos atributos importantes y profundizamos en la importancia de dtype. Comprender y utilizar efectivamente el atributo dtype es crucial para realizar cálculos numéricos eficientes y precisos en Python utilizando arrays de NumPy. Sigue practicando para mejorar tu dominio de los arrays de NumPy y sus atributos.