NumPy: Crear arrays desde un rango numérico

En este capítulo aprenderemos cómo crear arrays a partir de un rango numérico.

numpy.arange

En el paquete numpy, se utiliza la función arange para crear un rango numérico y devolver un objeto ndarray. El formato de la función es el siguiente:

numpy.arange(start, stop, step, dtype)

Genera un ndarray según el rango especificado por start y stop, y el paso establecido por step.

Descripción de parámetros:

Parámetro Descripción
start Valor inicial, por defecto es0
stop Valor final (no incluido)
step Paso, por defecto es1
dtype Devuelvendarrayel tipo de dato de ndarray. Si no se proporciona, se usará el tipo de dato de los datos de entrada.

Ejemplo

Genera un array de 0 a 4 con longitud 5:

Ejemplo

import numpy as np x = np.arange(5) print (x)

El resultado de salida es el siguiente:

[0  1  2  3  4]

Establecer el tipo de retorno como float:

Ejemplo

import numpy as np # Se ha establecido dtype x = np.arange(5, dtype = float) print (x)

El resultado de salida es el siguiente:

[0.  1.  2.  3.  4.]

Se han establecido el valor inicial, el valor final y el paso:

Ejemplo

import numpy as np x = np.arange(10,20,2) print (x)

El resultado de salida es el siguiente:

[10  12  14  16  18]

numpy.linspace

La función numpy.linspace se utiliza para crear un array unidimensional compuesto por una progresión aritmética. El formato es el siguiente:

np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

Descripción de parámetros:

Parámetro Descripción
start Valor inicial de la secuencia
stop Valor final de la secuencia, siendpointParatrue, este valor está incluido en la secuencia
num Número de muestras equidistantes a generar, por defecto es50
endpoint Cuando este valor estrue, la secuencia incluyestopvalor; de lo contrario, no se incluye. El valor predeterminado es True.
retstep Si es True, el array generado mostrará el espaciado; de lo contrario, no lo mostrará.
dtype ndarrayel tipo de dato de

El siguiente ejemplo utiliza tres parámetros: establece el punto inicial en 1, el punto final en 10 y el número de elementos en 10.

Ejemplo

import numpy as np a = np.linspace(1,10,10) print(a)

El resultado de salida es:

[ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]

Establece una progresión aritmética con todos los elementos en 1:

Ejemplo

import numpy as np a = np.linspace(1,1,10) print(a)

El resultado de salida es:

[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]

Establecer endpoint como false para no incluir el valor final:

Ejemplo

import numpy as np a = np.linspace(10, 20, 5, endpoint = False) print(a)

El resultado de salida es:

[10. 12. 14. 16. 18.]

Si endpoint se establece como true, se incluirá el 20.

El siguiente ejemplo establece el espaciado.

Ejemplo

import numpy as np a =np.linspace(1,10,10,retstep= True) print(a) # Ejemplo ampliado b =np.linspace(1,10,10).reshape([10,1]) print(b)

El resultado de salida es:

(array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.]), 1.0)
[[ 1.]
 [ 2.]
 [ 3.]
 [ 4.]
 [ 5.]
 [ 6.]
 [ 7.]
 [ 8.]
 [ 9.]
 [10.]]

numpy.logspace

La función numpy.logspace se utiliza para crear una progresión geométrica. El formato es el siguiente:

np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)

El parámetro base significa el subíndice del logaritmo al tomar el logaritmo.

Parámetro Descripción
start El valor inicial de la secuencia es: base ** start
stop El valor final de la secuencia es: base ** stop. SiendpointParatrue, este valor está incluido en la secuencia
num Número de muestras equidistantes a generar, por defecto es50
endpoint Cuando este valor estrue, la secuencia incluyestopvalor; de lo contrario, no se incluye. El valor predeterminado es True.
base La base del logaritmo log.
dtype ndarrayel tipo de dato de

Ejemplo

import numpy as np # La base predeterminada es 10 a = np.logspace(1.0, 2.0, num = 10) print (a)

El resultado de salida es:

[ 10.           12.91549665     16.68100537      21.5443469  27.82559402      
  35.93813664   46.41588834     59.94842503      77.42636827    100.    ]

Establecer la base del logaritmo en 2:

Ejemplo

import numpy as np a = np.logspace(0,9,10,base=2) print (a)

El resultado de salida es el siguiente:

[  1.   2.   4.   8.  16.  32.  64. 128. 256. 512.]
Otras extensiones