NumPy - Matriz de datos existentes
En este capítulo, discutiremos cómo crear una matriz a partir de datos existentes.
numpy.asarray
Esta función es similar a numpy.array excepto por el hecho de que tiene menos parámetros. Esta rutina es útil para convertir la secuencia de Python en ndarray.
numpy.asarray(a, dtype = None, order = None)
El constructor toma los siguientes parámetros.
No Señor. | Descripción de parámetros |
---|---|
1 | a Ingrese datos en cualquier forma, como lista, lista de tuplas, tuplas, tuplas de tuplas o tuplas de listas |
2 | dtype De forma predeterminada, el tipo de datos de los datos de entrada se aplica al ndarray resultante |
3 | order C (fila principal) o F (columna principal). C es predeterminado |
Los siguientes ejemplos muestran cómo puede utilizar asarray función.
Ejemplo 1
# convert list to ndarray
import numpy as np
x = [1,2,3]
a = np.asarray(x)
print a
Su salida sería la siguiente:
[1 2 3]
Ejemplo 2
# dtype is set
import numpy as np
x = [1,2,3]
a = np.asarray(x, dtype = float)
print a
Ahora, la salida sería la siguiente:
[ 1. 2. 3.]
Ejemplo 3
# ndarray from tuple
import numpy as np
x = (1,2,3)
a = np.asarray(x)
print a
Su salida sería -
[1 2 3]
Ejemplo 4
# ndarray from list of tuples
import numpy as np
x = [(1,2,3),(4,5)]
a = np.asarray(x)
print a
Aquí, la salida sería la siguiente:
[(1, 2, 3) (4, 5)]
numpy.frombuffer
Esta función interpreta un búfer como una matriz unidimensional. Cualquier objeto que exponga la interfaz del búfer se utiliza como parámetro para devolver unndarray.
numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)
El constructor toma los siguientes parámetros.
No Señor. | Descripción de parámetros |
---|---|
1 | buffer Cualquier objeto que exponga la interfaz del búfer |
2 | dtype Tipo de datos de ndarray devuelto. Por defecto flotar |
3 | count El número de elementos para leer, predeterminado -1 significa todos los datos |
4 | offset La posición inicial para leer. El valor predeterminado es 0 |
Ejemplo
Los siguientes ejemplos demuestran el uso de frombuffer función.
import numpy as np
s = 'Hello World'
a = np.frombuffer(s, dtype = 'S1')
print a
Aquí está su salida:
['H' 'e' 'l' 'l' 'o' ' ' 'W' 'o' 'r' 'l' 'd']
numpy.fromiter
Esta función crea un ndarrayobjeto de cualquier objeto iterable. Esta función devuelve una nueva matriz unidimensional.
numpy.fromiter(iterable, dtype, count = -1)
Aquí, el constructor toma los siguientes parámetros.
No Señor. | Descripción de parámetros |
---|---|
1 | iterable Cualquier objeto iterable |
2 | dtype Tipo de datos de la matriz resultante |
3 | count El número de elementos que se leerán del iterador. El valor predeterminado es -1, lo que significa que se leerán todos los datos |
Los siguientes ejemplos muestran cómo utilizar el range()función para devolver un objeto de lista. Un iterador de esta lista se utiliza para formar unndarray objeto.
Ejemplo 1
# create list object using range function
import numpy as np
list = range(5)
print list
Su salida es la siguiente:
[0, 1, 2, 3, 4]
Ejemplo 2
# obtain iterator object from list
import numpy as np
list = range(5)
it = iter(list)
# use iterator to create ndarray
x = np.fromiter(it, dtype = float)
print x
Ahora, la salida sería la siguiente:
[0. 1. 2. 3. 4.]