8.2.2 Funciones predefinidas para creación de arrays

8.2.2 Funciones predefinidas para creación de arrays

NumPy ofrece una gran variedad de funciones predefinidas para creación de arrays que nos permiten simplificar el proceso de construcción de este tipo de estructuras de datos.

Valores fijos

A continuación veremos una serie de funciones para crear arrays con valores fijos.

Ceros

8.2.2 Funciones predefinidas para creación de arrays

Por defecto, ésta y otras funciones del estilo, devuelven valores flotantes. Si quisiéramos trabajar con valores enteros basta con usar el parámetro dtype:

8.2.2 Funciones predefinidas para creación de arrays

Existe la posibilidad de crear un array de ceros con las mismas dimensiones (y forma) que otro array:

8.2.2 Funciones predefinidas para creación de arrays

Lo cual sería equivalente a pasar la «forma» del array a la función predefinida de creación de ceros:

8.2.2 Funciones predefinidas para creación de arrays

Unos

8.2.2 Funciones predefinidas para creación de arrays

Mismo valor

8.2.2 Funciones predefinidas para creación de arrays

Matriz identidad

8.2.2 Funciones predefinidas para creación de arrays

Matriz diagonal

8.2.2 Funciones predefinidas para creación de arrays

Ejercicio

Cree la siguiente matriz mediante código Python:

8.2.2 Funciones predefinidas para creación de arrays

Obtenga igualmente las siguientes características de cada uno de ellos: dimensión, tamaño, forma y tipo de sus elementos.

Valores equiespaciados

A continuación veremos una serie de funciones para crear arrays con valores equiespaciados o en intervalos definidos.

Valores enteros equiespaciados

La función que usamos para este propósito es np.arange() cuyo comportamiento es totalmente análogo a la función «built-in» range().

Especificando límite superior:

8.2.2 Funciones predefinidas para creación de arrays

Especificando límite inferior y superior:

8.2.2 Funciones predefinidas para creación de arrays

Especificando límite inferior, superior y paso:

8.2.2 Funciones predefinidas para creación de arrays

Es posible especificar un paso flotante en la función arange():

8.2.2 Funciones predefinidas para creación de arrays

Valores flotantes equiespaciados

La función que usamos para este propósito es np.linspace() cuyo comportamiento es «similar» a np.arange() pero para valores flotantes.

Especificando límite inferior y superior:

8.2.2 Funciones predefinidas para creación de arrays

Nota: Por defecto np.linspace() genera 50 elementos.

Especificando límite inferior, superior y total de elementos:

8.2.2 Funciones predefinidas para creación de arrays

Importante: A diferencia de np.arange(), la función np.linspace() incluye «por defecto» el límte superior especificado.

Especificando un intervalo abierto [a, b):

8.2.2 Funciones predefinidas para creación de arrays

Valores aleatorios

A continuación veremos una serie de funciones para crear arrays con valores aleatorios y distribuciones de probabilidad.

Valores aleatorios enteros

Valores aleatorios enteros en (a,b):

8.2.2 Funciones predefinidas para creación de arrays

Valores aleatorios flotantes

Por simplicidad, en el resto de ejemplos vamos a obviar la salida escalar y matriz.

Valores aleatorios flotantes en [0,1):

8.2.2 Funciones predefinidas para creación de arrays

Valores aleatorios flotantes en [a,b):

8.2.2 Funciones predefinidas para creación de arrays

Distribuciones de probabilidad

Distribución normal: Ejemplo en el que generamos un millón de valores usando como parámetros de la distribución 𝜇 = 0, 𝜎 = 5

8.2.2 Funciones predefinidas para creación de arrays

Muestra aleatoria: Ejemplo en el que generamos una muestra aleatoria de un millón de lanzamientos de una moneda:

8.2.2 Funciones predefinidas para creación de arrays

Muestra aleatoria con probabilidades no uniformes: Ejemplo en el que generamos una muestra aleatoria de un millón de lanzamientos con un dado «trucado»:

8.2.2 Funciones predefinidas para creación de arrays

Muestra aleatoria sin reemplazo: Ejemplo en el que seleccionamos 5 principios aleatorios del Zen de Python sin reemplazo:

8.2.2 Funciones predefinidas para creación de arrays

Ver también:

Listado de distribuciones aleatorias que se pueden utilizar en NumPy.

Ejercicio

Cree:

  • Una matriz de 20 filas y 5 columnas con valores flotantes equiespaciados en el intervalo cerrado [1,10].
  • Un array unidimensional con 128 valores aleatorios de una distribución normal ^ = 1, a =
  • Un array unidimensional con 15 valores aleatorios de una muestra 1, X, 2 donde la probabilidad de que gane el equipo local es del 50%, la probabilidad de que empaten es del 30% y la probabilidad de que gane el visitante es del 20%.

Constantes

Numpy proporciona una serie de constantes predefinidas que facilitan su acceso y reutilización. Veamos algunas de ellas:

8.2.2 Funciones predefinidas para creación de arrays

8.2.2 Funciones predefinidas para creación de arrays

Publicaciones Similares