Categories: Python

Numpy básico: inicialización de arrays en Numpy

En esta entrada se va a ver como hacer una tarea básica, la inicialización de arrays en Numpy con diferentes valores. Una tarea que puede ser tediosa si no se conocen y utilizan las herramientas que provee Numpy para ello. Además, estas son operaciones necesarias antes de comenzar con diferentes análisis de datos.

Inicialización de arrays con ceros con np.zeros()

Numpy dispone de una función con la que se pueden crear arrays de un tamaño dado inicializados con ceros. Esta función es np.zeros() y tiene la siguiente forma:

np.zeros(shape, dtype=float, order='C')

donde

  • shape: son las dimensiones del array Numpy que se desea construir. Si es un escalar creará un vector, mientras si se indica una tupla se obtendrá una matriz.
  • dtype: es un parámetro opcional en el que se indica el tipo de dato. Por defecto se utiliza el tipo de dato float.
  • order: es un parámetro opcional con el que se indica como se llenarán las matrices: F primero las filas o C primero las columnas. Siendo el valor por defecto C.

Así para crear una vector de 3 elementos con ceros se puede escribir.

import numpy as np

np.zeros(3)
array([0., 0., 0.])

Por otro lado, si lo que se desea es crear una matriz de ceros de 3 por 2 simplemente se tiene que escribir la siguiente línea de código.

np.zeros((3, 2))
array([[0., 0.],
       [0., 0.],
       [0., 0.]])

En este caso a la función se la ha pasado una tupla con las dimensiones de la matriz, por lo que el resultado es el esperado: una matriz.

Inicialización de arrays con unos con np.ones()

En otros casos puede ser que sea necesario crear matrices con ceros. En este caso la función que hay que utilizar es np.ones(), la que se utiliza igual que np.zeros(). Así para crear un vector de unos es necesario escribir algo como

np.ones(3)
array([1., 1., 1.])

Por otro lado, cuando se desea crear una matriz se tiene que escribir algo como.

np.ones((3, 2))
array([[1., 1.],
       [1., 1.],
       [1., 1.]])

Inicialización de arrays con otros valores

En muchas ocasiones puede que el valor por defecto con el que sea necesario inicializar los arrays no es ni cero ni uno. En tal caso se puede utilizar el método np.ones() para crear un array de unos y multiplicar este por el valor deseado. Por ejemplo, un array de 3 se puede obtener mediante.

np.ones(3) * 3
array([3., 3., 3.])

Conclusiones

En esta entrada se ha visto un par de funciones de Numpy con las que se simplificar el trabajo de crear arrays con un valor por defecto. np.zeros() para la creación de ceros y np.ones() para unos. La inicialización de arrays en Numpy con diferentes valores es una tarea habitual que se simplifica mucho con estas funciones. Siendo más estas funciones sencillas para la tarea que la creación se arrays similares a partir de listas o tuplas.

Imágenes: Pixabay (Marit Welker)

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez
Tags: NumPy

Recent Posts

Curiosidad: La Paradoja de Simpson, o por qué no siempre debes fiarte de los promedios

En ciencia de datos y estadística, los promedios y porcentajes son herramientas fundamentales para resumir…

10 horas ago

Copias de seguridad automáticas en SQL Server con rotación de archivos

Las bases de datos son el corazón de casi cualquier sistema de información moderno. Ya…

2 días ago

Curiosidad: La Ley de Twyman y la trampa de los datos “interesantes”

En ciencia de datos, pocas cosas llaman más la atención de los científicos de datos…

1 semana ago

Cómo calcular el tamaño de la muestra para encuestas

Calcular adecuadamente el tamaño de la muestra es una parte esencial en el diseño de…

1 semana ago

Curiosidad: El origen del análisis exploratorio de datos y el papel de John Tukey

Hoy en día, cuando pensamos en ciencia de datos, lo primero que nos viene a…

2 semanas ago

Cómo extender el tamaño de un disco en Rocky Linux 9 usando growpart y LVM

Ampliar el espacio de almacenamiento en un sistema Linux es una tarea habitual y crítica…

2 semanas ago

This website uses cookies.